Arrays 获取angularjs中的动态范围数组变量值
我有一个作用域数组变量,我正在尝试动态访问它。其值已设置 是这样的Arrays 获取angularjs中的动态范围数组变量值,arrays,angularjs,angularjs-scope,dynamic-scope,Arrays,Angularjs,Angularjs Scope,Dynamic Scope,我有一个作用域数组变量,我正在尝试动态访问它。其值已设置 是这样的 $scope.setp = { arr: [] }; $scope.setp.arr[0] = "sample Value"; 当我试图动态访问它时,如下所示,我得到了未定义 console.log($scope['setp.arr[0]']); 但是,我可以使用以下命令直接访问它 console.log($scope.setp.arr[0]); 动态获取作用域变量值的方法对其他变量也适用,但在变量名包含方括号(即[])时
$scope.setp = { arr: [] };
$scope.setp.arr[0] = "sample Value";
当我试图动态访问它时,如下所示,我得到了未定义
console.log($scope['setp.arr[0]']);
但是,我可以使用以下命令直接访问它
console.log($scope.setp.arr[0]);
动态获取作用域变量值的方法对其他变量也适用,但在变量名包含方括号(即[])时失败
我遵循了这一点,但对于包含数组或方括号[]的范围变量没有成功
另外,使用$parse服务动态设置scope数组变量也可以正常工作,如下所示
var scopeVariable = $parse('setp.arr[0]');
scopeVariable.assign($scope, "new Value");
这将不起作用
console.log($scope['setp.arr[0]')代码>因为它试图访问一个属性setp.arr[0]
。您可以像console.log($scope['setp']['arr'][0])那样访问它代码>这将不起作用console.log($scope['setp.arr[0]')代码>因为它试图访问一个属性setp.arr[0]
。您可以像console.log($scope['setp']['arr'][0])那样访问它
$scope['setp'].arr[0]
或$scope['setp']['arr'][0]
如果你想成为真正的cray cray。非常感谢。它起作用了。$scope['setp'].arr[0]
或者$scope['setp']['arr'][0]
如果你想成为真正的cray cray。非常感谢。成功了。