Javascript 如何从数组中删除匹配字?

Javascript 如何从数组中删除匹配字?,javascript,Javascript,我有两个数组 例如: 我想打印 "upareaselectionsetting" 需要删除b中的“uparea”?通过A中的每个项目的第一个循环,以检查b中是否存在当前单词。如果存在,则将其从B中删除。最后连接并连接两个数组以获得预期的输出 使用forEach()、concat()和join()尝试以下操作: let A=[“uparea”,“selection”] 设B=[“upareasetting”]; A.forEach(功能(i){ if(B[0].indexOf(i)>-1) B

我有两个数组

例如:

我想打印

"upareaselectionsetting"

需要删除b中的
“uparea”

通过
A
中的每个项目的第一个循环,以检查
b
中是否存在当前单词。如果存在,则将其从
B
中删除。最后连接并连接两个数组以获得预期的输出

使用
forEach()
concat()
join()
尝试以下操作:

let A=[“uparea”,“selection”]
设B=[“upareasetting”];
A.forEach(功能(i){
if(B[0].indexOf(i)>-1)
B=B[0]。替换(i,”);
});
设res=A.concat(B)join(“”);

控制台日志(res)这是我的解决方案,希望能有所帮助

function removeMatchingWords(a, b) {
    result_string = "";
    for (let i=0; i<a.length; i++) {
        result_string += a[i];
        for (let j=0; j<b.length; j++) {
            if (b[j].includes(a[i])) {
                b[j] = b[j].replace(a[i], "");
            }
        }
    }
    for (let k=0; k<b.length; k++) {
        result_string += b[k];
    }
    return result_string;
};
函数删除匹配字(a,b){
结果_字符串=”;

对于(设i=0;我是否需要删除b中的“uparea”或是否需要从b的所有元素中删除A的所有元素?这是一个给出标题的模糊示例。需要比较A和b,然后删除匹配的单词
const A = ["uparea", "selection"],
  B = ["upareasetting"];

console.log(
  A.join("") +
  B.map(
    item => item.replace(/uparea/, "")
  ).join("")
);

// upareaselectionsetting
function removeMatchingWords(a, b) {
    result_string = "";
    for (let i=0; i<a.length; i++) {
        result_string += a[i];
        for (let j=0; j<b.length; j++) {
            if (b[j].includes(a[i])) {
                b[j] = b[j].replace(a[i], "");
            }
        }
    }
    for (let k=0; k<b.length; k++) {
        result_string += b[k];
    }
    return result_string;
};