a,b 2つの配列のそれぞれの要素が後方一致するかを比較し、

  • a,b両方で存在したもの(後方一致)
  • aの配列内でbに無い要素(後方一致しないもの)
  • bの配列内でaに無い要素(後方一致しないもの)

をそれぞれ出力したいです。

出力例としてはこんな感じにしたい

const a = ["http://abc/","http://abc/def/","http://ghi/"];
const b = ["/abc/","/def/","/jkl/"];
/*
出力例:
http://abc/ と /abc/ はOK
http://abc/def/ と /def/はOK
配列a内の差分:http://ghi/
配列b内の差分:/jkl/
*/

自分で書いてみたところ、a[0]とb全部→a[1]とb全部→...という風に、
後方一致するものの出力はできました。

for(let i=0;i<a.length;i++){
    for(let j=0;j<b.length;j++){
        if(a[i].endsWith(b[j])){
            console.log(a[i] +"と"+ b[j] +"はOK");
        }
    }
}
/*
出力:
http://abc/ と /abc/ はOK
http://abc/def/ と /def/はOK
*/

aの配列内でbと後方一致しないもの(http://ghi/
bの配列内でaと後方一致しないもの(/jkl/)
をどう出力すれば良いかわかりません。

何かいい方法があれば教えていただきたいです。
(上記のfor文ももっとスマートに書ければ書き直したい...)

ご回答の程、よろしくお願いします。