例如,我有一个MAIN数组,其中包含我需要的所有信息:
$scope.songs = [
{ title: 'Reggae', url:"#/app/mworkouts", id: 1 },
{ title: 'Chill', url:"#/app/browse", id: 2 },
{ title: 'Dubstep', url:"#/app/search", id: 3 },
{ title: 'Indie', url:"#/app/search", id: 4 },
{ title: 'Rap', url:"#/app/mworkouts", id: 5 },
{ title: 'Cowbell', url:"#/app/mworkouts", id: 6 }
];
我想只将某些对象放入另一个数组而不输入每个对象,所以最终结果看起来像
$scope.array1 = [
{ title: 'Reggae', url:"#/app/mworkouts",id: 1 },
{ title: 'Cowbell', url:"#/app/mworkouts",id: 6 }
];
我试过这个没有运气:
$scope.array1 = [
{ $scope.songs[1] },
{ $scope.songs[6] }
];
我将不得不做一些这样的事情,因此输入每个对象将需要永远,有没有更快的方法来做到这一点?在此先感谢:)
答案 0 :(得分:2)
你需要做这样的事情:
public Boolean createSuperList(String newKey) {
SuperLink newSuperLink2 = new SuperLink(newKey);
SuperLink current = first;
boolean i = false;
if (isEmpty()) {
incertLast(newKey);
}
while (!current.keyWord.equals(newSuperLink2.keyWord) && current != null) {
if (current.keyWord.equals(newSuperLink2.keyWord)) {
System.out.println("Not unique Item");
i = false;
break;
} else {
System.out.println("Unique Item");
i = true;
}
current = current.next;
}
if (i = true) {
return i;
} else {
return i;
}
}
此处,filter
函数将为您提供要替换原始范围值的已过滤的新数组。
或者以简单的方式,使用数组索引,您可以使用:
$scope.array1 = $scope.songs.filter(function (song) {
return (song.title == "Reggae" || song.title == "Cowbell");
});
答案 1 :(得分:1)
你需要删除大括号,因为它已经是一个对象。虽然数组索引从0
开始,因此根据0
更改索引值。
$scope.array1 = [
$scope.songs[0] ,
$scope.songs[5]
];