我正在使用带有节点的fuzzy
模块,但我有一个长JSON数组包含对象。我需要匹配对象整体。像
模块的链接 Fuzzy Modules
var list = [
{rompalu: 'baconing', zibbity: 'simba'}
, {rompalu: 'narwhal' , zibbity: 'mufasa'}
, {rompalu: 'a mighty bear canoe', zibbity: 'saddam hussein'}
];
我有上面的JSON数组列表,如果我传递单词narwhal
,它只返回数组中匹配的单词,但我需要匹配对象的数组。输出如:
[
{rompalu: 'narwhal' , zibbity: 'mufasa'}
]
答案 0 :(得分:1)
似乎有各种选择。
使用fuzzy.test()
手动过滤列表:
var results = list.filter(function(obj) {
return fuzzy.test('narwhal', obj.rompalu);
});
提取“原件”:
var options = { extract: function(el) { return el.rompalu; } };
var results = fuzzy.filter('narwhal', list, options).map(function(r) {
return r.original;
});