Javascript 根据数组中的字符串列表过滤对象的最佳方法是什么?

我有以下数组,其中包含字符串


const dict = ['original sound', 'الصوت الأصلي', 'оригинальный звук'];

现在我想使用对象过滤器根据数组对其进行过滤


Object.filter = (obj, predicate) =>

    Object.keys(obj)

          .filter( key => predicate(obj[key]) )

          .reduce( (res, key) => (res[key] = obj[key], res), {} );


let filtered = Object.filter(audio, audio =>

  audio.audio.title !== dict

);

需要明确的是,我不想要任何标题与 dict 数组匹配的音乐


肥皂起泡泡
浏览 95回答 2
2回答

jeck猫

检查数组是否不包含该元素:let filtered = Object.filter(audio, audio =>    !dict.includes(audio.audio.title) );

不负相思意

如果我理解正确,您想要根据另一个字符串数组作为字典来过滤字符串数组,如果是这样,请尝试下面var filtered = ['a', 'b', 'c', 'd'].filter(&nbsp; function(e) {&nbsp; &nbsp; return this.indexOf(e) < 0;&nbsp; },&nbsp; ['b', 'd']);小心绳子。include (anotherString) 不适用于 IE
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript