"原生"关键字在JavaScript中意味着什么?

pim*_*vdb 12 javascript native function token keyword

我偶然发现了v8LocaleChrome开发者控制台中调用的功能.我很好奇所以我输入了获取源代码的函数,它显示了以下代码:

function (a){
native function NativeJSLocale();
var b=NativeJSLocale(a);
this.locale=b.locale;
this.language=b.language;
this.script=b.script;
this.region=b.region;
}
Run Code Online (Sandbox Code Playgroud)

我开始在互联网上搜索,发现这个文件似乎是源代码(看起来它虽然已经缩小了).

我不知道native这里的关键字是什么意思.当我尝试自己制作这样的东西时:

function bar() {}

function foo() {
    native function bar();
}
Run Code Online (Sandbox Code Playgroud)

我得到以下错误消息(实际上我的预期):

SyntaxError: Unexpected token native
Run Code Online (Sandbox Code Playgroud)

v8Locale函数如何包含native令牌,它是什么意思/做什么?

Mat*_*att 9

这用于v8表示该函数是用C++代码实现的

  • 请注意,*native*并不意味着"C++".它可以是任何语言,Mozilla一直在使用`Java`. (2认同)