Мені було цікаво, що $scope.$evalви так часто бачите в директивах, тому я перевірив джерело і виявив таке в rootScope.js:
$eval: function(expr, locals) {
return $parse(expr)(this, locals);
},
$parseСхоже, визначається ParseProviderв parse.js, який, як видається, визначає якийсь власний міні-синтаксис (файл - 900 рядків).
Мої запитання:
Що саме
$evalробить? Для чого потрібна власна мова для міні-розбору?Чому не використовується звичайний старий JavaScript
eval?
$parseшалено чудово.