一、Node.js的简介

A、简述

1、它是一个基于 Chrome V8 引擎的 JavaScript 运行环境。

2、它使用了一个事件驱动、非阻塞式 I/O 的模型,使其轻量又高效。

3、它的包管理器 npm,是全球最大的开源库生态系统。

B、JS和Node.js的区别

        JS是脚本语言,脚本语言都需要一个解析器才能运行。对于写在HTML页面里的JS,浏览器充当了解析器的角色。而对于需要独立运行的JS,NodeJS就是一个解析器。

        每一种解析器都是一个运行环境,不但允许JS定义各种数据结构,进行各种计算,还允许JS使用运行环境提供的内置对象和方法做一些事情。

eg:

        运行在浏览器中的JS的用途是操作DOM,浏览器就提供了Document之类的内置对象。而运行在NodeJS中的JS的用途是操作磁盘文件或搭建HTTP服务器,NodeJS就相应提供了fs、http等内置对象。

C、它的用处

        NodeJS的作者说,他创造NodeJS的目的是为了实现高性能Web服务器,他首先看重的是事件机制和异步IO模型的优越性,而不是JS。但是他需要选择一种编程语言实现他的想法,这种编程语言不能自带IO功能,并且需要能良好支持事件机制。JS没有自带IO功能,天生就用于处理浏览器中的DOM事件,并且拥有一大群程序员,因此就成为了天然的选择。
        如他所愿,NodeJS在服务端活跃起来,出现了大批基于NodeJS的Web服务。而另一方面,NodeJS让前端众如获神器,终于可以让自己的能力覆盖范围跳出浏览器窗口。
        因此,对于前端而言,虽然不是人人都要拿NodeJS写一个服务器程序,但简单可至使用命令交互模式调试JS代码片段,复杂可至编写工具提升工作效率。

D、跨平台性

       NodeJS 是跨平台的,也就是说它能运行在 Windows、Android、OSX 和 Linux 等平台上。很多 Node.js 开发者都是在 OSX 上做开发的,然后再将代码部署到 Linux 服务器上。由于 OSX 和 Linux 都是基于 Unix 的,因此两者共性很多。Windows 也是 Node.js 官方支持的平台,只要你通过正确的方式写代码,就能在各个平台上毫无压力的跑起来。主要是生成的安装包程序并不大,是非常好的跨平台神器。

二、第一个Node.js程序——Hello World

1、按照我上述文章中的方法安装好WebStorm后,配置好Node和NPM后就做好准备工作了

2、创建一个项目,写好项目的名称和路径后,就可以写代码了。

3、使用 Node.js 编写的一个web服务器,响应返回 'Hello World':

#!/usr/bin/env node

const http = require('http');
const hostname = '127.0.0.1';
const port = 3000;
const server = http.createServer((req, res)=> {
res.statusCode = 200;
res.setHeader('Content-Type', 'text/plain');
res.end('Hello World\n');
});
server.listen(port, hostname, () => {
console.log(`服务器运行在 http://${hostname}:${port}/`);
});

4、编译运行成功后,如图:

①、运行成功后,可以看到输出框中输出以下结果

NodeJS学习 之 Nodejs简介和Hello World_node.js

②、点击这个地址后,默认的浏览器被打开,输出以下结果

NodeJS学习 之 Nodejs简介和Hello World_node.js_02

 

这样Node.js的第一个程序就做好了