我有这样的功能:
$scope.activeimageset = function(id){}
现在,我将一些参数作为 ID 传递给提到的函数,我想使用收集的参数选择一些变量,如下所示:
$scope.activeimageset = function(id){$scope.img{{id}}.src1 = $scope.img{{id}}.src2;}
这意味着我想使用传递给我的函数的参数来选择一些对象,然后将该对象的一个属性设置为另一个属性。我怎样才能做到这一点?我知道我的代码有误且无法运行,但我想知道如何才能使其运行?
最佳答案
您可以像这样重写您的函数:
$scope.activeimageset = function(id){
$scope['img' + id].src1 = $scope['img' + id].src2;
};
在JS中你可以使用两种方式获取属性值,它们是Dot Notation and Square Bracket Notation .
Here is使用这些方式的最基本示例:
var obj = {
prop1: 'prop1 value',
prop2: [1,2,3]
}
var propName = 'prop2';
console.log(obj.prop1); // 'prop1 value'
console.log(obj[propName]); '[1, 2, 3]'
总结:
点符号写起来更快,读起来更清晰。
方括号表示法允许访问包含
的属性 特殊字符和使用变量选择属性(就像您的情况一样)。
关于javascript - 使用函数参数选择angularjs变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39504199/