我创建了一个简单的变量,如下所示,我想打印它。我编造了命令打印,但这当然不起作用。有没有等价物?我希望它在输出上显示输出变量,就像我在执行 x.gatesAgeOnDate() 时显示返回值一样
var billGatesBirthday = '10-28-1955';
print billGatesBirthday;
exports.gatesAge = function() {
return (new Date() - new Date(billGatesBirthday)) / 1000 / 60 / 60 / 24 / 365.25
};
exports.gatesAgeOnDate = function(dateOfInterest) {
console.log('dateOfInterest');
return (new Date(dateOfInterest) - new Date(billGatesBirthday)) / 1000 / 60 / 60 / 24 / 365.25
};
在 REPL 中工作有点奇怪(大多数人,我建议你也这样做,制作真正的.js文件,然后使用 node realfile.js
运行它。".js"甚至是可选的),但是:您有三个选项。
首先,在 JavaScript 中执行此操作的通用方法是使用 console.log
(和相关语句)。这就像它在锡上所说的那样:它会记录到控制台。
处于 REPL 中,这意味着您评估的任何命令也将自动记录其返回值。在实际的 Node 运行(从文件)中,您只能依赖 console.log
,在 REPL 中,您也可以键入变量名称并查看返回值:
> var a = "cats":
undefined
> a
'cats'
方便。
最后,你在 Node 中,所以你可以通过 process.stdout.write 直接访问标准输出管道,这样你就可以将写入流式传输到该管道。绝对没有理由这样做,但您可以:
> var a = "lol";
undefined
> process.stdout.write(a);
loltrue
"那不仅仅是一个",不,它不是,就像上面提到的,它是你做的事情加上返回值。 console.log
很好心地自动为您插入换行符,process.stdout 显然不会。所以我们看到打印a
的值,没有换行符,然后是流写入尝试的返回值,这是true
,因为没有出错。不要为此使用 process.stdout。
console.log(billGatesBirthday);
始终使用 console.log() 使用 JavaScript 打印任何内容。