例如我有一个这样的数组:
var t = ko.observableArray([
{"FoodName":"Rice","FoodOften":"2"},
{"FoodName":"Apple","FoodOften":"3"}
]);
如何以智能方式向所有这些项目添加静态项目?
[
{"Student":"1","FoodName":"Rice","FoodOften":"2"},
{"Student":"1","FoodName":"Apple","FoodOften":"3"}
]
我知道我可以循环t().length
添加t()[n].Student="1"
,但只是想知道是否有任何聪明的淘汰方式?
答案 0 :(得分:1)
回答这个问题的每个变体都将是某种形式的'迭代数组并将值添加到每个对象'。一些:
t.forEach(function(entry) {
entry.Student = 1;
});
var newT = t.map(function(entry) {
entry.Student = 1;
return entry;
});
for (var i = 0; i++; i< t.length) {
t[i].Student = 1;
}
顺便说一下,至少在Chrome中,jsperf说第一个是这三个中效率最高的。