我是Angular js的新手,
我有以下代码将数据绑定到div,
app.filter("myfilter", function () {
return function (data, catName) {
if (angular.isArray(data) && angular.isString(catName)) {
var rs = [];
var key = {};
for (var i = 0; i < data.length; i++) {
var currdata = data[i][catName];
if (angular.isUndefined(key[currdata])) {
key[currdata] = true;
rs.push(currdata);
}
}
return rs;
}
else
return data;
}
})
但是当我遇到上面的代码时,我发现了一行&#34; key [currdata] = true;&#34; 这段代码的作用是什么?
当我评论这个特定的行数据绑定没有发生?
提前致谢。
答案 0 :(得分:2)
这条线就像一个标记,以便在下一次迭代中条件&#34; angular.isUndefined ...&#34;是错误的,这样就可以防止将重复值推送到rs数组中。
答案 1 :(得分:0)
只是检查没有重复的密钥被推送到rs