位置: 编程技术 - 正文
推荐整理分享NodeJs中的VM模块详解(node vm模块),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:node vm模块,nodejs官方模块,nodejs vm模块,nodejs中的模块以及作用,node vm2,nodejs vm模块,node vm模块,nodejs vm2,内容如对您有帮助,希望把文章链接给更多的朋友!
什么是VM?
VM模块是NodeJS里面的核心模块,支撑了require方法和NodeJS的运行机制,我们有些时候可能也要用到VM模板来做一些特殊的事情。
通过VM,JS可以被编译后立即执行或者编译保存下来稍后执行(JavaScript code can be compiled and run immediately or compiled, saved, and run later.)VM模块包含了三个常用的方法,用于创建独立运行的沙箱体制,如下三个方法vm.runInThisContext(code, filename);
此方法用于创建一个独立的沙箱运行空间,code内的代码可以访问外部的global对象,但是不能访问其他变量
而且code内部global与外部共享
此方法用于创建一个独立的沙箱运行空间,sandBox将做为global的变量传入code内,但不存在global变量
sandBox要求是vm.createContext()方法创建的sandBox这个方法应该和runInContext一样,但是少了创建sandBox的步骤
比较
更为复杂的情形如果runInContext里面执行runInThisContext会是怎么样,runInThisContext访问到的global对象是谁的?
如下代码将会怎么执行?
runInThisContext里面的代码可以访问外部的global对象,但外面实际上不存在global对象(虽然有,但本质不是global对象),只要记住一点,runInThisContext只能访问最顶部的global对象就OK了
执行结果如下
浅谈NodeJS中require路径问题 项目需要用nodejs,感觉nodejs是前端装逼神器了,是通向全栈工程师的必经之路哇,接下来开始踏上学习nodejs的征程。下面是第一个hello,world的程序。1、
ubuntu下安装nodejs以及升级的办法 因为最近打算研究下nodejs,结果发现了网上并没有适合先在的nodejs的安装和更新教程首先在ubuntu的命令行下执行:apt-getinstallnodejs然后我们需要安装npm,
Node.js 去掉种子(torrent)文件里的邪恶信息 年,一部名为ABS-的日本影片引起了网络的震动,网络上纷纷出现了当初求种像条狗,如今*完嫌人丑的现象,成为了年互联网的一件大事件。
标签: node vm模块
本文链接地址:https://www.jiuchutong.com/biancheng/378011.html 转载请保留说明!友情链接: 武汉网站建设