最佳答案
我对指令中经常出现的 $scope.$eval
很好奇,所以我查看了它的源代码,在 rootScope.js
中发现了以下内容:
$eval: function(expr, locals) {
return $parse(expr)(this, locals);
},
$parse
似乎是由 parse.js
中的 ParseProvider
定义的,parse.js
似乎定义了自己的某种迷你语法(文件长度为900行)。
我的问题是:
$eval
到底在做什么? 为什么它需要自己的迷你解析语言?
为什么没有使用普通的旧 JavaScripteval
?