强调不能正确过滤

时间:2017-11-30 14:19:44

标签: javascript arrays underscore.js

我试图用下划线过滤我的dynamoddb结果。但过滤器无效。这有什么问题。

var results = [{email: { S: 'mycosmedical2017@gmail.com' }];
var Users = _.where(result, { email: { S: 'mycosmedical2017@gmail.com' 
}})
console.log(Users)

jsfiddle

1 个答案:

答案 0 :(得分:1)

猜测它是由于多级对象,这是实现结果的一种方法。

来源:here

var result = [{
    user_info: {
        S: '{"fname":"Sanumi","lname":"Niromi"}'
    }, 
    email: { S: 'vindyavishwani@yahoo.com' },
    mobileNo: { S: '1234567890' }
},
{
    user_info: { S: '{"fname":"Arya","lname":"Stark","prefname":"Vindi"}' },
    email: { S: 'mycosmedical2017@gmail.com' },
    mobileNo: { S: '0777773425' }
},
{
    user_info: { S: '{"fname":"Mohamed","lname":"Nizar"}' },
    email: { S: 'nizarucsc@gmail.com' }
},
{
    user_info: { S: '{"fname":"Sansa","lname":"Stark"}' },
    email: { S: 'vindya@proitzen.com' }
}];

var Users = _.filter(result, function(item){
    return _.some(item, { S: 'vindyavishwani@yahoo.com' });
});

console.log(Users)


/**	expected
[ { user_info: { S: '{"fname":"Arya","lname":"Stark","prefname":"Vindi"}' },
email: { S: 'mycosmedical2017@gmail.com' },
mobileNo: { S: '0777773425' } },]
**/
.as-console {
    height: 100%;
}
.as-console-wrapper {
  max-height: 100% !important;
  top: 0;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.8.3/underscore-min.js"></script>