在 findWhere 中使用下划线 return true 或 false
Use underscore to return true or false with findWhere
假设我有以下数据:
var data = {
activeUser: { id: 3, name: 'Joe', something: 'else' },
location: {
users: [{id: 1}, {id: 2}, {id: 3}]
}
};
我想 return 一个布尔值是否可以在 data.location.users
数组中找到 activeUser
。请注意,location.users
数组中的对象不会与 activeUser
对象具有相同的键。
是否有正常的下划线方式来做到这一点?我有以下内容。
var userExists = (_.findWhere(data.location.users, {id: data.activeUser.id})) ? true : false;
我正在使用 findWhere
方法来 return 一个对象,如果它不存在则为 null。
另一种选择是使用 ._some()
method。它将 return 一个基于是否找到任何东西的布尔值:
var userExists = _.some(data.location.users, function (user) {
return user.id === data.activeUser.id;
});
假设我有以下数据:
var data = {
activeUser: { id: 3, name: 'Joe', something: 'else' },
location: {
users: [{id: 1}, {id: 2}, {id: 3}]
}
};
我想 return 一个布尔值是否可以在 data.location.users
数组中找到 activeUser
。请注意,location.users
数组中的对象不会与 activeUser
对象具有相同的键。
是否有正常的下划线方式来做到这一点?我有以下内容。
var userExists = (_.findWhere(data.location.users, {id: data.activeUser.id})) ? true : false;
我正在使用 findWhere
方法来 return 一个对象,如果它不存在则为 null。
另一种选择是使用 ._some()
method。它将 return 一个基于是否找到任何东西的布尔值:
var userExists = _.some(data.location.users, function (user) {
return user.id === data.activeUser.id;
});