2015-02-05 20 views
0

我对这个东西很陌生,但我试图在JavaScript中创建一个类的新实例,我也想使用输入初始化类,就像函数一样。使用函数访问其他类的Javascript

到目前为止,我有:

/Class1.js 
/folder/Class2.js 

Class2.js:

function Class2(n) { 
this.number = n; 
} 

Class1.js:

var instance = new Class2(1); 

那没有工作,所以我想需要等级:

require('./folder/Class2.js'); 

var newClass = new require('./folder/Class2.js'); 
var instance = new newClass(1); 

无论是工作,我得到的错误:

Class2 is not defined

this没有网上的例子都没有进入任何细节,为什么它不工作只是同非工作的东西。

+0

'class'是一个保留的标识符,所以你不能有一个名为'class'的变量。事实上,在[ECMAScript 6](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-class-definitions)中,它用于创建类。 – Oriol

+0

它们是示例名称,因此我不必浏览实际调用和定位的所有不同文件夹和类名称。 – Greg

回答

1

module.exports = Class2;添加到您的第2类文件的末尾。当您需要该文件时,您分配的值将被返回。如果你不输出任何东西,你需要的时候根本不会得到任何东西。

0

这也可能是由于您的HTML中的JS类定义的顺序造成的。您可能会尝试在Class2'exists'之前引用Class1中的Class2。