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。非常感谢。成功了。