我试图从lodash过滤器中获取一个字符串列表,该过滤器使用正则表达式来测试它是否应该返回密钥。每个对象的值都是真的(这让我觉得我应该首先在列表上工作)但是无论如何,只是想知道,为什么我的过滤结果是key的值而不是key的实际字符串值?
var _ = require('lodash');
var testString = 'scss';
var re = new RegExp('' + testString + '', 'g');
var visited = {
'/home/web/scss/pages/FrontPage.scss': true,
'/home/web/scss/pages/OtherPage.scss': true,
'/home/web/files/otherfile.js': true
};
var keys = _.filter(visited, function(value, key){
if (key.match(re)) {
console.log(key, value);
return key
}
});
console.log(keys);
//results
/home/web/scss/pages/FrontPage.scss true
/home/web/scss/pages/OtherPage.scss true
[ true, true ]