javascript - 使用函数参数选择angularjs变量

标签 javascript html angularjs

我有这样的功能:

$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/

相关文章:

javascript - 如何在 location.href 中使用目标

javascript - 如何从路径连接多个div?

javascript - 加载时停止 CSS 过渡 + 反向过渡

javascript - Angularjs $document[0].activeElement 而不是 $document.activeElement

javascript - 这个简单的 AngularJs 页面中的 Controller 在哪里?

javascript - Firebase AngularFire $保存不需要的结果

javascript - 在非异步函数中使用 "await"

javascript - Trampoline、递归和惰性求值

javascript - 如何在 phonegap Windows Phone 中从 javascript 调用 c# 代码

html - 我在可点击区域内的链接不可点击