我的意思是,如果我想要做的瀏覽器的東西,如呼叫EVAL,我可以這樣做:Node.js需要函數的父對象?
window['eval']();
正如在「調用EVAL用繩子」。
但是在Node中沒有窗口。有global
,但這並不需要它。
什麼包含要求在節點上,這樣我可以做的:
???['require']();
我試圖在全球範圍內this[require]
和global['require']
,我也試圖與require.prototype
和require.constructor
但沒有運氣找到需要的功能父。
編輯:
require
確實存在地方,因爲只是寫require('vm')
例如,它的工作原理。
該Node.js source包含NativeModule.require
和nativeModule
引用,但NativeModule
沒有定義,當我嘗試使用它。
我也很困惑...從文檔(https://nodejs.org/api/globals.html#globals_require):'要求模塊。請參閱模塊部分。 require''實際上並不是全局的,而是每個模塊的局部。' – Randy
'window ['eval']'是對'eval'函數的引用,但是因爲它在窗口中,所以可以使用'eval'來代替。 nodejs中的'require'函數被注入,所以你可以直接使用它作爲'require',而不需要'prefix.require'。爲什麼你會想要使用'require'作爲動態函數?發佈你想要的東西:) –
@AndreyPopov也許我想繞過一些檢查代碼的「要求」的話。因此,對於eval,它會像'var e ='ev'一樣工作。 var a ='al';窗口[e + a](code)' – Piwwoli