Javascript Node.js模块变量
所以,我想了解NodeJ在什么对象中存储模块中的变量?我知道nodejs模块返回module.exports,所以我尝试在module对象中查找模块变量,但没有任何变量。全局对象也没有此变量 例如:Javascript Node.js模块变量,javascript,node.js,node-modules,Javascript,Node.js,Node Modules,所以,我想了解NodeJ在什么对象中存储模块中的变量?我知道nodejs模块返回module.exports,所以我尝试在module对象中查找模块变量,但没有任何变量。全局对象也没有此变量 例如: const a = 0; Nodejs中的哪个对象包含我的“a=0”?我可以访问这个对象吗?如何访问?在Node中,就像在所有Javascript环境中一样,存储变量名及其内容的容器称为。每个街区都有这样的环境。当引用变量时(分配值或检索值),解释器检查当前块的LE中是否存在这样的变量。如果没有,
const a = 0;
Nodejs中的哪个对象包含我的“a=0”?我可以访问这个对象吗?如何访问?在Node中,就像在所有Javascript环境中一样,存储变量名及其内容的容器称为。每个街区都有这样的环境。当引用变量时(分配值或检索值),解释器检查当前块的LE中是否存在这样的变量。如果没有,它将查找下一个外部块中的LE,依此类推,直到找到匹配的变量名,然后根据需要检索或设置值 这个容器完全是引擎内部的,但是-除了通过引用变量,您不能通过JS显式地与它交互。它不是Javascript对象 词法环境和环境记录值纯粹是规范机制,不需要对应于ECMAScript实现的任何特定构件ECMAScript程序不可能直接访问或操作这些值。 它不是模块或节点的特定内容。例如,在浏览器中运行以下代码:
(()=>{
常数a=0;
})();代码>
Nodejs中的哪个对象包含我的“a=0”
不,它不在对象中,它在函数中
我可以访问这个对象吗?如何访问
如果你只是像你描述的那样声明它,你就不能
获取模块外部变量的唯一方法是首先导出它
您必须在链接到module.exports的引用树中找到它。
模块中的所有内容都将被包装到一个函数中,常量将在函数作用域中声明,因此在不导出它的情况下无法将其导出
只需执行以下操作,其他模块即可访问:
module.exports={
a:a
};
不,它不是一个对象。与所有变量一样,它们存储在一个作用域中,您无法访问该作用域。