使用Angular js过滤方法填充数据

时间:2017-02-26 17:48:42

标签: javascript angularjs

我是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; 这段代码的作用是什么?

当我评论这个特定的行数据绑定没有发生?

提前致谢。

2 个答案:

答案 0 :(得分:2)

这条线就像一个标记,以便在下一次迭代中条件&#34; angular.isUndefined ...&#34;是错误的,这样就可以防止将重复值推送到rs数组中。

答案 1 :(得分:0)

只是检查没有重复的密钥被推送到rs