我正在尝试按用户定义的单词过滤数组,以便它像搜索一样运行。这可能不是解决问题的方法,但我以前从未创建过搜索,而且它的逻辑和速度都很快。我有一个数组'数据集',包含我在各种对象中的数据。它看起来像这样: 数据集[对象,对象,对象,对象,对象,对象,对象,对象,对象,对象,对象,对象,对象,对象,对象,对象,对象]
每个对象包含以下内容:
commenturl: "http://blogs.ft.com/businessblog/2013/12/"
definition: "To fire someone."
sourceurl: null
submisiondate: "02/11/2015"
usagesource: "HSBC"
phrase: "Transition out of the company"
wordid: "word001"
wordtype: "Verb"
我有一个输入表单,当其更改时将其值返回到变量'lookup'。因此,如果我在表单中键入“公司”一词,则查找='公司'
然后,我想将名为'phrase'的元素上的对象数据集过滤到另一个名为'results'的数组。在上面的示例中,元素短语='转出公司',因为它包含与'lookup'相同的单词'company',它应该将整个对象返回到结果数组。
在数组数据集的第二个对象中,元素短语='死亡',所以我不希望返回
尝试做这样的事情,但似乎不起作用。任何帮助表示赞赏
var lookup=String(this.value)
console.log("search",lookup);
var results=dataset.filter(function(el){return el.word.text.indexOf(lookup) > -1)});
console.log("results",results);
答案 0 :(得分:0)
似乎有一个无与伦比的支架,现在可行了
var lookup=String(this.value)
console.log("search",lookup);
var results=dataset.filter(function(el){
return (el.word.indexOf(lookup) > -1)
});
console.log("results",results);