AngularJS有像eval这样的函数吗?

时间:2015-03-27 15:07:20

标签: angularjs eval

AngularJS是否具有与eval类似的任何功能或方法?

我需要获取先前定义的变量的值,例如:

data.mess_5 = "Hello"
c = 5
x = eval( "data.mess_" + c )

2 个答案:

答案 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