大多数语言使用 '进口' 指令来加载其他模块的代码,如 的java -的NodeJS使用变量赋值来加载模块
import a.b.c
的elisp -
(load a)
蟒 -
from a import b
但是,为什么nodejs使用变量表达式来加载其他模块函数,如
var a = require('a')
我明白了,对于像tern.js-emacs的JavaScript的大多数IDE,nodeclipse都无法做到的源代码查找(加载的模块)正确,因为IDE已经运行的代码(或)做的eval到找出加载的模块对象包含的属性。
的ECMAScript 5.1(https://es5.github.io/)是Node.js的运行语言。它没有导入。当ES6支持它时,节点将支持它。同时还有ES6 - > ES5转换器,如果您愿意,您可以在JS中使用导入。 – generalhenry
,以便您可以使用该变量来引用返回的对象。例如'a.someMethodOfA();'。 – Todd