Yargs.argv 始终是 [object Object]

Yargs.argv is always [object Object]

Ubuntu 16.04。我正在上 Udemy 的 node.js 课程。我尝试使用讲师使用的确切版本,然后升级到最新版本(11.0.0)。两者都给出了相同的输出。

const yargs = require('yargs');

var argv = yargs.argv;

console.log("yargs : " + argv);

我 运行 它在控制台上

node app.js jdskl jkdlsfj

控制台输出为

yargs : [object Object]

据我了解,它应该有我的参数。

尝试console.log("yargs : ", argv);

+ 连接字符串,, 将 argv 作为单独的参数传递给控制台日志,这应该触发单独的日志格式


另一个选项是:console.log("yargs : " + JSON.stringify(argv)); 因为这会将您的对象序列化为 JSON 字符串表示

app.js

const yargs = require("yargs");
console.log((JSON.stringify(yargs.argv)));

命令:

node app.js add --title="This is a test"
Result: {
         "_":["add"],
         "title":"This is a test",
         "[=11=]":"app.js"
        }