删除JavaScript中第二个字符串中没有的第一个字符串中的元素
我们需要编写一个包含两个字符串的JavaScript函数。我们的函数应该返回第一个字符串的较新版本,其中仅包含第二个字符串中也存在的那些元素。
请注意,返回的字符串中元素的出现顺序不应更改,即,该顺序应与第一个字符串中的顺序相同。
示例
为此的代码将是-
const str1 = 'abcdefgh';
const str2 = 'banana';
const deleteSelectively = (str1 = '', str2 = '') => {
let strArr1 = str1.split('');
const strArr2 = str2.split('');
const map = {};
strArr2.forEach(el => {
map[el] = 1;
});
strArr1 = strArr1.filter(el => {
return map.hasOwnProperty(el);
});
return strArr1.join('');
};
console.log(deleteSelectively(str1, str2));输出结果
控制台中的输出将是-
ab