6
我在一个单独的文件中有一个类。我需要在另一个文件中创建它的一个实例。我试过这个:node.js - 直接从需求创建类的实例
var connection = new require('./connection.js')("ef66143e996d");
但是,这是不工作,因为我想。现在我正在使用这个作为临时解决方案:
var Connection = require('./connection.js');
connection = new Connection("ef66143e996d");
两个问题;
首先,为什么不工作。
其次,我怎样才能做到这一点与单线?
这可行,好的。但我用'(“ef66143e996d”)'调用了'require'。为什么'new'不适用于从'require('./connection.js')(“ef66143e996d”)返回的函数''。这必须是它遇到的第一个功能。 – MindlessRanger
当运行'new require('connection')()'时,require是它遇到的第一个函数。它从左到右进行评估。将括号中的require('connection')包装起来,使得无论括号解析为什么'new'都被应用到。 – jperezov
为了澄清,假设'require('./connection.js')暴露了函数'Connection',''Connection'函数将不会被暴露,直到'require'函数被调用。 'new'关键字会在'require'函数之前触发_unless_函数被包裹在圆括号中。这与“3 * 2 + 1 = 7”的原因相同,但是“3 *(2 + 1)= 9”。在这个例子中把'new'关键字看作乘法 - 它有更高的优先级。 – jperezov