我试图了解nodeJS的引导是如何工作的,但是我被函数require所堆叠。
第一次使用require 1)internal/bootstrap/loaders.js (见下图)在src/node.cc中传递到此文件中,因为1)internal/bootstrap/loaders.js接受internal/bootstrap/loaders.js的要求(该要求在步骤1)internal/bootstrap/loaders.js use internalBinding之前执行,使用getInternalBindinggetInternalBinding create from ...src/no
我在苹果电脑上。我刚刚安装了角IDE (eclipse),当我尝试创建一个新的角项目时,它失败了。我可以在终端上运行相同的命令,它可以工作。我在IDE之外使用节点8.9.1和NPM5.5.1,但找不到告诉插件使用该版本的位置。
Node.js version: v9.1.0
NPM version: 5.5.1
npm install @angular/cli@1.4.9
npm WARN npm npm does not support Node.js v9.1.0
npm WARN npm You should probably upgrade to a newer v
我想做的是从c++调用JS/v8中已经编译的函数。我这样做是为了一个我正在编写的游戏引擎,它使用V8作为脚本后端。
以下是为我的引擎格式化脚本的方式:
function init(){ //this gets called at the startup of the game
print("wambo");
}
var time = 0;
function tick(delta){ //this gets called every frame
time += delta;
print("pop");
}
我试着在这个编译后的文档中查找v
因此,我有一个具有承诺支持的nodejs:
$ node -v
v0.11.11
但当我试图使用承诺时,我有一个错误:
$ node --harmony test.js
require, module, __filename, __dirname) { var promise = new Promise(fu
^
ReferenceError: Promise is not defined
at Object.<anonymous>
我一直在研究v8源代码,特别是'mksnapshot‘工具是如何包含本地javascript文件(runtime.js、json.js...)的编译图像的。在v8二进制文件中,并注意到它还包含(某种程度上)精简版的源代码。例如,在检查d8可执行文件的内容时,我看到以下代码片段:
var $JSON=global.JSON;
function Revive(a,b,c){
var d=a[b];
if((%_IsObject(d))){
if((%_IsArray(d))){
var g=d.length;
在'src/json.js‘的开头,我看到:
var $JSON =