第一个Node程序

    在前面的所有章节中,我们编写的JavaScript代码都是在浏览器中运行的,因此,我们可以直接在浏览器中敲代码,然后直接运行。

    从本章开始,我们编写的JavaScript代码将 不能 在浏览器环境中执行了,而是在Node环境中执行,因此,JavaScript代码将直接在你的计算机上以命令行的方式运行,所以,我们要先选择一个文本编辑器来编写JavaScript代码,并且把它保存到本地硬盘的某个目录,才能够执行。

    那么问题来了:文本编辑器到底哪家强?

    推荐两款文本编辑器:

    一个是 Sublime Text ,免费使用,但是不付费会弹出提示框:

    第一个Node程序 - 图1

    一个是 Notepad++ ,免费使用,有中文界面:

    第一个Node程序 - 图2

    请注意,用哪个都行,但是绝对不能用Word和写字板,Windows自带的记事本也强烈不推荐使用。Word和写字板保存的不是纯文本文件,而记事本会自作聪明地在文件开始的地方加上几个特殊字符(UTF-8 BOM),结果经常会导致程序运行出现莫名其妙的错误。

    安装好文本编辑器后,输入以下代码:

    'use strict';



    console.log('Hello, world.');

    第一行总是写上 'use strict'; 是因为我们总是以严格模式运行JavaScript代码,避免各种潜在陷阱。

    然后,选择一个目录,例如 C:\Workspace ,把文件保存为 hello.js ,就可以打开命令行窗口,把当前目录切换到 hello.js 所在目录,然后输入以下命令运行这个程序了:

    C:\Workspace>node hello.js

    Hello, world.

    也可以保存为别的名字,比如 first.js ,但是必须要以 .js 结尾。此外,文件名只能是英文字母、数字和下划线的组合。

    如果当前目录下没有 hello.js 这个文件,运行 node hello.js 就会报错:

    C:\Workspace>node hello.js

    module.js:338

    throw err;

    ^

    Error: Cannot find module 'C:\Workspace\hello.js'

    at Function.Module._resolveFilename

    at Function.Module._load

    at Function.Module.runMain

    at startup

    at node.js

    报错的意思就是,没有找到 hello.js 这个文件,因为文件不存在。这个时候,就要检查一下当前目录下是否有这个文件了。