Saya ingin tahu tentang $scope.$eval
Anda yang sering dilihat dalam arahan, jadi saya memeriksa sumbernya dan menemukan yang berikut di rootScope.js
:
$eval: function(expr, locals) {
return $parse(expr)(this, locals);
},
$parse
tampaknya didefinisikan oleh ParseProvider
in parse.js
, yang tampaknya mendefinisikan beberapa jenis sintaks mini sendiri (panjang file 900 baris).
Pertanyaan saya adalah:
Apa yang sedang
$eval
dilakukan? Mengapa perlu bahasa parsing mini sendiri?Mengapa JavaScript lama
eval
tidak digunakan?
$parse
luar biasa hebat.