v8ツリーを参照すると、ディレクトリの下にsrc
いくつかの js ファイルがあり、Math、Array などの基本的な JS オブジェクトを提供していました。これらのファイルを参照すると、名前にパーセント記号 (%) を含む識別子が表示されました%Foo
。最初は単純に JS の識別子で許可されている別の文字だと思っていましたが、シェルで試してみると、構文規則に違反していると怒鳴られました。しかし、それが構文エラーである場合、d8 はどのように機能するのでしょうか? 実際のソース コードの例を次に示します。
src/apinatives.js 44 行目から 47 行目、github/v8/v8 からの git clone
function Instantiate(data, name) {
if (!%IsTemplate(data)) return data;
var tag = %GetTemplateField(data, kApiTagOffset);
switch (tag) {
src/apinatives.js 41 行目から 43 行目、github/v8/v8 からの git clone
function SetConstructor() {
if (%_IsConstructCall()) {
%SetInitialize(this);
この識別子で構文エラーが発生しないのはなぜですか。math.js と string.js およびその他すべてを含むすべての js ファイル?:wq