process.argv在node.js中未定义
我似乎无法运行节点中最琐碎的脚本: 平台:视窗10 节点-v:v10.7.0 文件:“sample.js” 命令行:process.argv在node.js中未定义,node.js,Node.js,我似乎无法运行节点中最琐碎的脚本: 平台:视窗10 节点-v:v10.7.0 文件:“sample.js” 命令行: D:\temp>node sample.js 1 2 3 D:\temp\sample.js:4 process.argv.forEach((val, index) => { ^ TypeError: Cannot read property 'forEach' of undefined at Object.<anonymou
D:\temp>node sample.js 1 2 3
D:\temp\sample.js:4
process.argv.forEach((val, index) => {
^
TypeError: Cannot read property 'forEach' of undefined
at Object.<anonymous> (D:\temp\sample.js:4:14)
at Module._compile (internal/modules/cjs/loader.js:689:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:700:10)
at Module.load (internal/modules/cjs/loader.js:599:32)
at tryModuleLoad (internal/modules/cjs/loader.js:538:12)
at Function.Module._load (internal/modules/cjs/loader.js:530:3)
at Function.Module.runMain (internal/modules/cjs/loader.js:742:12)
at startup (internal/bootstrap/node.js:266:19)
at bootstrapNodeJSCore (internal/bootstrap/node.js:596:3)
D:\temp>node sample.js 1 2 3
D:\temp\sample.js:4
process.argv.forEach((val,index)=>{
^
TypeError:无法读取未定义的属性“forEach”
对象处。(D:\temp\sample.js:4:14)
at模块编译(内部/modules/cjs/loader.js:689:30)
at Object.Module._extensions..js(internal/modules/cjs/loader.js:700:10)
在Module.load(内部/modules/cjs/loader.js:599:32)
在tryModuleLoad(内部/modules/cjs/loader.js:538:12)
at Function.Module._load(内部/modules/cjs/loader.js:530:3)
位于Function.Module.runMain(内部/modules/cjs/loader.js:742:12)
启动时(内部/bootstrap/node.js:266:19)
在bootstrapNodeJSCore(internal/bootstrap/node.js:596:3)
如果代码正确,请重新安装node.js。重复我的评论作为回答,如下所示:
向我们展示整个
sample.js
文件。具体来说,您的process.argv.forEach()
在第4行之前的第1-3行是什么?我保证之前的3行中有一行将process
重新定义为函数,而不是它应该是对象
我发现,我在下面定义了函数进程,这就是为什么进程对象被我自己的进程对象覆盖的原因
因此,要解决:
检查您是否没有使用函数重写“进程”对象
把它一行一行地放高,找出代码是什么
超越它
旧建议:
在我的例子中,它被“重新定义”,即使我把它放在第一行,“进程”是一个函数
要检索对象,我使用显式调用:
const process=require('process');
这是全部代码吗?控制台.log(process)
是什么?如果代码正确,请重新安装node.js。向我们展示整个sample.js
文件。具体地说,第4行之前的第1-3行中的process.argv.forEach()我保证这3行中的一条是重新定义<代码>进程<代码>为<代码>函数>代码>而不是<代码>对象< /代码>应该是.@伯尔萨考虑添加您的解决方案作为一个answer@dossy谢谢,这为我解决了问题。我已经定义了一个进程()
function.Doh。为什么要重新安装来修复它?这是Windows或node 10.7.0上的常见问题吗?这让我省去了一个大麻烦!
D:\temp>node sample.js 1 2 3
D:\temp\sample.js:4
process.argv.forEach((val, index) => {
^
TypeError: Cannot read property 'forEach' of undefined
at Object.<anonymous> (D:\temp\sample.js:4:14)
at Module._compile (internal/modules/cjs/loader.js:689:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:700:10)
at Module.load (internal/modules/cjs/loader.js:599:32)
at tryModuleLoad (internal/modules/cjs/loader.js:538:12)
at Function.Module._load (internal/modules/cjs/loader.js:530:3)
at Function.Module.runMain (internal/modules/cjs/loader.js:742:12)
at startup (internal/bootstrap/node.js:266:19)
at bootstrapNodeJSCore (internal/bootstrap/node.js:596:3)