日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
創(chuàng)新互聯(lián)Node.js教程:Node.js虛擬機(jī)
穩(wěn)定性: 3 - 穩(wěn)定

本節(jié)介紹了node.js的虛擬機(jī)(VM)模塊,該模塊提供了用于在V8虛擬機(jī)上下文中編譯和運(yùn)行代碼的API。

創(chuàng)新互聯(lián)公司主營(yíng)陵水黎族網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營(yíng)網(wǎng)站建設(shè)方案,成都app軟件開發(fā)公司,陵水黎族h5微信小程序開發(fā)搭建,陵水黎族網(wǎng)站營(yíng)銷推廣歡迎陵水黎族等地區(qū)企業(yè)咨詢

可以通過(guò)以下方法訪問(wèn)該模塊:

var vm = require('vm');

JavaScript 可以立即編譯立即執(zhí)行,也可以編譯,保存,之后再運(yùn)行。

vm.runInThisContext(code[, options])

vm.runInThisContext()對(duì)參數(shù)code編譯,運(yùn)行并返回結(jié)果。運(yùn)行的代碼沒(méi)有權(quán)限訪問(wèn)本地作用域(local scope),但是可以訪問(wèn)全局對(duì)象。

使用vm.runInThisContexteval方法運(yùn)行同樣代碼的例子:

var localVar = 'initial value';

var vmResult = vm.runInThisContext('localVar = "vm";');
console.log('vmResult: ', vmResult);
console.log('localVar: ', localVar);

var evalResult = eval('localVar = "eval";');
console.log('evalResult: ', evalResult);
console.log('localVar: ', localVar);

// vmResult: 'vm', localVar: 'initial value'
// evalResult: 'eval', localVar: 'eval'

vm.runInThisContext沒(méi)有訪問(wèn)本地作用域,所以沒(méi)有改變localVar。eval范圍了本地作用域,所以改變了localVar。

vm.runInThisContext用起來(lái)很像間接調(diào)用eval,比如(0,eval)('code')。但是,vm.runInThisContext也包含以下選項(xiàng):

  • filename: 允許更改顯示在站追蹤(stack traces)的文件名。
  • displayErrors: 是否在stderr上打印錯(cuò)誤,拋出異常的代碼行高亮顯示。會(huì)捕獲編譯時(shí)的語(yǔ)法錯(cuò)誤,和執(zhí)行時(shí)拋出的錯(cuò)誤。默認(rèn)為true。
  • timeout: 中斷前代碼執(zhí)行的毫秒數(shù)。如果執(zhí)行終止,將會(huì)拋出錯(cuò)誤。

vm.createContext([sandbox])

如果參數(shù)sandbox不為空,調(diào)用vm.runInContextscript.runInContext時(shí)可以調(diào)用沙箱的上下文。以此方式運(yùn)行的腳本,sandbox是全局對(duì)象,它保留自己的屬性同時(shí)擁有標(biāo)準(zhǔn)全局對(duì)象(global object)擁有的內(nèi)置對(duì)象和函數(shù)。

如果參數(shù)sandbox對(duì)象為空,返回一個(gè)可用的新且空的上下文相關(guān)的沙盒對(duì)象。

這個(gè)函數(shù)對(duì)于創(chuàng)建一個(gè)可運(yùn)行多腳本的沙盒非常有用。比如,在模擬瀏覽器的時(shí)候可以使用該函數(shù)創(chuàng)建一個(gè)用于表示window全局對(duì)象的沙箱,并將所有