Nodejs:`process.binding`是什么意思?
在研究github上的node.js源代码时,我多次看到process.binding('...')
。
有人可以解释我什么这个function吗?
该函数返回内部模块,如require。 它不是公共的,所以你不应该在代码中依赖它,但是如果你想知道事情是如何工作的,你可以使用它来和节点的低级对象一起玩。
例如, 在这里注册了 timer_wrap
绑定。 它导出 Timer
构造函数。 在lib/timers.js
它被导入
这是一个function,实质上是去抓住C ++function,并使其在JavaScript内部可用。 以process.binding('zlib')
中使用的这个示例process.binding('zlib')
为例
这本质上是走出去,得到zlib C ++对象,然后在JavaScript代码中使用剩下的时间。
所以当你使用zlib的时候,你并没有真正的去抓取C ++库,而是使用为你包装C ++特性的Javascript库。
它使它更容易使用