【问题标题】:How to properly run vanilla javascript code in node terminal?如何在节点终端中正确运行 vanilla javascript 代码?
【发布时间】:2019-11-08 12:44:27
【问题描述】:

当我在终端中启动 node.js 并运行 4 + 4 时,它会按预期输出 8。但是,当我从文件中运行相同的代码时......除非我使用 console.log!?

  • 为什么我需要 console.log 来输出结果,而 vanilla js 基本上应该这样做?
  • 我认为console.log 是浏览器的代码...为什么它在node.js 中运行?是的,我知道 node.js 与 chrome 建立在同一个引擎上......但是,它们仍然是两种不同的产品。 console.log 在浏览器方面不是比 node.js 更有意义吗?

非常感谢。

【问题讨论】:

  • javascript 中的 console.log 就像 Java 中的 System.out.println 一样。它与浏览器无关。法比亚诺给出的答案是正确的。 console.log 是一种 javascript 语法,用于将某些内容登录到终端。在浏览器中,终端是console。就是这样。
  • @KaleshKaladharan 感谢您的比较,但它仍然没有回答我的问题,即通过终端与文件运行 js 代码之间的差异。但是,是的……我理解他的解释。这是有道理的。
  • 运行 Node 和运行它的 REPL 是有区别的。
  • @SebastianSimon 啊!感谢您的重要区别。

标签: javascript node.js


【解决方案1】:

谈到计算机,console 是一个广泛的概念,主要用于指代具有输入和输出源的终端。它同样是您的 OS shell 终端。因此,在 Javascript 中,console 对象类型代表了运行代码的终端。当然,它不打算成为browser thing

无论如何,当您在终端提示符下运行 Javascript 代码时,您正在输入和输出每个命令并返回。通常它会读取您的输入并打印返回值。当您从文件执行代码时,如果您希望它从正在运行的终端读取或在其上打印,您必须告诉您的代码这样做。这是因为当您运行代码时,如果您希望它在您的控制台 (console.log) 上打印,您需要将其打印出来。因此,您告诉它返回表达式并在控制台上打印。当你不告诉它这样做时,它会返回计算后的表达式,但不会打印,所以你看不到它。

希望对你有所帮助。

【讨论】:

    【解决方案2】:

    console.log 函数被用作基本函数,顾名思义,将某些内容记录到控制台。在 node.js 等集成环境中运行时,它为您提供易于使用的单行对多行执行,每个输出都会自动刷新到控制台。另一方面,在 JS 文件中键入相同的代码 t,我们并没有向脚本提供任何特定信息,它需要输出答案

    例如:

    App.js

    4+4
    

    如果我们在终端运行它输出将是什么,但如果我们使用

    app_console.js

    console.log(4+4)
    

    然后运行它

    $ node app_console.js
    

    它的结果是4,因为我们明确告诉引擎输出它。其他几种语言使用它们执行内联控制台,例如 Python 的 Pyshell

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-06-09
      • 2015-01-19
      • 2020-07-16
      • 1970-01-01
      • 1970-01-01
      • 2018-08-10
      • 2016-04-17
      • 2013-04-14
      相关资源
      最近更新 更多