函数名称为json值

时间:2016-02-06 17:04:35

标签: javascript angularjs

我有一个像

这样的json对象
var json={
  key1:val1,
  key2:"foo" //as a string
}

我有foo功能

$scope.foo=function{
  //something
}

现在ng-click我想做ng-click="json.key2()"

之类的事情

基本上我想从它的字符串名称中调用这个foo函数?

有可能吗? 我知道这是一个糟糕的方法,但它有可能吗?

由于

1 个答案:

答案 0 :(得分:1)

您可以使用方括号动态访问对象的属性。

例如,在您的控制器中(在声明$scope.foo之后):

$scope.fn = $scope[json.key2];

在你的标记中:

ng-click="fn()"