AngularJS -如何重写对象键

AngularJS - how to iteare over object keys?

本文关键字:重写 对象 何重写 AngularJS      更新时间:2023-09-26

我想这样初始化:

vm.line0 = 1;
vm.line1 = 1;
...

我在angular中做这样的迭代:

angular.forEach(modules, function (value, key) {
    var i = key;
    var temp = 'line' + i;
    vm.temp= 1;
});

然而,这似乎是一个大错误。但是我怎样才能得到我想要的呢?

不确定期望的结果是什么,但遗漏的语法与javascript有关。它与Angular无关。

要通过名称访问对象的属性(保存在字符串变量中),应该使用括号

angular.forEach(modules, function (value, key) {
    var i = key;
    var temp = 'line' + i;
    vm[temp] = 1;
});

然而,作为一条建议,为什么不使用数组来分组应该迭代的元素呢?这将简化以后的许多事情

vm.lines = [];
angular.forEach(modules, function (value, key) {
    vm.lines[key] = key;
});