启动 node.js 平台本身和执行 .js 文件之间存在边界。我很好奇想知道在 node.js 源代码中开始执行编译代码的那个时刻在哪里......
启动 node.js 平台本身和执行文件之间存在界限 .js
。
我很好奇,想知道在 node.js 源代码中开始执行编译代码的那个时刻在哪里?
我发现了下一个:
MaybeLocal<Value> BuiltinLoader::CompileAndCall(Local<Context> context,
const char* id,
int argc,
Local<Value> argv[],
Realm* optional_realm) {
// Arguments must match the parameters specified in
// BuiltinLoader::LookupAndCompile().
MaybeLocal<Function> maybe_fn = LookupAndCompile(context, id, optional_realm);
Local<Function> fn;
if (!maybe_fn.ToLocal(&fn)) {
return MaybeLocal<Value>();
}
Local<Value> undefined = Undefined(context->GetIsolate());
return fn->Call(context, undefined, argc, argv);
}
我是否正确理解了 fn->Call(context, undefined, argc, argv)
运行已编译的脚本代码?