AngularJS是否具有与eval
类似的任何功能或方法?
我需要获取先前定义的变量的值,例如:
data.mess_5 = "Hello"
c = 5
x = eval( "data.mess_" + c )
答案 0 :(得分:2)
Angularjs是javascript,所以你可以使用eval,假设你的var在全局范围内。但是,在这种特殊情况下(和大多数其他情况),eval是错误的工具。
data.mess_5 = "Hello"
c = 5
x = data['mess_' + c]
答案 1 :(得分:1)
检查$ parse函数(取自Setting dynamic scope variables in AngularJs - scope.<some_string>)
var the_string = 'life.meaning';
// Get the model
var model = $parse(the_string);
// Assigns a value to it
model.assign($scope, 42);
// Apply it to the scope
$scope.$apply();
console.log($scope.life.meaning); // logs 42