今天在七天学会nodejs遇到下面的程序,然后出现了下面的问题(问题现在已经解决,所以想问一下调试方面的问题):
//源代码
var fs = require('fs');
function copy(src, dst) {
fs.writeFileSync(dst, fs.readFileSync(src));
}
function main(argv) {
copy(argv[0], argv[1]);
}
main(process.argv.slice(2));
fs.js:500
return binding.open(pathModule._makeLong(path), stringToFlags(flags), mode);
^
TypeError: path must be a string
at TypeError (native)
at Object.fs.openSync (fs.js:500:18)
at Object.fs.readFileSync (fs.js:352:15)
at copy (/home/quoniam/node/app.js:4:30)
at main (/home/quoniam/node/app.js:8:5)
at Object.<anonymous> (/home/quoniam/node/app.js:11:1)
at Module._compile (module.js:460:26)
at Object.Module._extensions..js (module.js:478:10)
at Module.load (module.js:355:32)
at Function.Module._load (module.js:310:12)
我想进行调试,于是我找到了fs.js(在node的lib目录下)文件的第五百行,想要进行debug;
我尝试了两中方法:
第一种:在fs.js文件加console.log(path),
第二种:在fs.js文件加debugger。
提问:
但是上面两种方法都快速定位不到fs.js文件出错的那一行,所以我想请教各位大大,我应该怎样才能调试fs.js文件,即我怎样快速定位到fs.js文件?
找个带调试功能的IDE——我也不知道有啥,因为我一般就用 console.log,根据消息大概能定位,再写点 console.log 来找。