1

我有一个数组,里面有几个项目,其中一个是位置。其中一些位置是空的,没有任何价值。我想把这些空位置中的每一个都拿走并执行一项功能。有谁知道该怎么做?

数组可能如下所示:

array=[{user:a,user_id:b,date:c,profile_img:d,text:e,contentString:f,url:g,location:""},    
{user:a,user_id:b,date:c,profile_img:d,text:e,contentString:f,url:g,location:""}];
4

3 回答 3

0

一个简单的for循环应该可以工作:

for (var i = 0; i < array.length; i++) {
    if (array[i].location.length == 0) {
        //Do something with array[i]
    }
}
于 2012-08-18T21:07:21.260 回答
0

虽然你可以编写一个循环,但使用 Underscore.js 会更容易,它有一个很棒的过滤器功能。

只需编写一个测试以返回具有空位置的用户。

var allUsers = [{
    user: "user-with-location",
    user_id: "b",
    date: "c",
    profile_img: "d",
    text: "e",
    contentString: "f",
    url: "g",
    location: "asdf"
}, {
    user: "user-without-location",
    user_id: "b",
    date: "c",
    profile_img: "d",
    text: "e",
    contentString: "f",
    url: "g",
    location: ""
}];

var usersWithoutLocation = _.filter(allUsers, function(user) {
    return user.location === "";
});
于 2012-08-18T22:16:59.013 回答
0

作为提示,您可以简化值检查

for (var i = 0; i < array.length; i++) {
  if (!array[i].location) {
    //Do something with array[i]
  }
}
于 2012-08-19T00:20:56.660 回答