node.js初识

简单的说 Node.js 就是运行在服务端的 JavaScript。
Node.js 是一个基于Chrome JavaScript 运行时建立的一个平台。
Node.js是一个事件驱动I/O服务端JavaScript环境,基于Google的V8引擎,V8引擎执行
Node.js 是单进程单线程应用程序,但是通过事件和回调支持并发,所以性能非常高
Javascript的速度非常快,性能非常好。


第一个node.js程序
脚本模式

<blockquote>
console.log("Hello World!");
</blockquote>
保存该文件,文件名为 helloworld.js, 并通过 node命令来执行:
<blockquote>
node helloWorld.js
</blockquote>

交互模式

打开终端,键入node进入命令交互模式,可以输入一条代码语句后立即执行并显示结果,例如:
<blockquote>
$ node

console.log('Hello World!');
Hello World!
</blockquote>

创建第一个应用
让我们先了解下 Node.js 应用是由哪几部分组成的:

  1. 引入 required 模块:我们可以使用 require 指令来载入 Node.js 模块。

  2. 创建服务器:服务器可以监听客户端的请求,类似于 Apache 、Nginx 等 HTTP 服务器。

  3. 接收请求与响应请求 服务器很容易创建,客户端可以使用浏览器或终端发送 HTTP 请求,服务器接收请求后返回响应数据。
    创建 Node.js 应用
    步骤一、引入 required 模块
    我们使用 require 指令来载入 http 模块,并将实例化的 HTTP 赋值给变量 http,实例如下:
    <blockquote>
    var http = require("http");
    </blockquote>
    步骤二、创建服务器
    接下来我们使用 http.createServer() 方法创建服务器,并使用 listen 方法绑定 8888 端口。 函数通过 request, response 参数来接收和响应数据。
    实例如下,在你项目的根目录下创建一个叫 server.js 的文件,并写入以下代码:
    <blockquote>
    var http = require('http');
    http.createServer(function (request, response) {

    // 发送 HTTP 头部
    // HTTP 状态值: 200 : OK
    // 内容类型: text/plain
    response.writeHead(200, {'Content-Type': 'text/plain'});

    // 发送响应数据 "Hello World"
    response.end('Hello World\n');
    }).listen(8888);
    // 终端打印如下信息
    console.log('Server running at http://127.0.0.1:8888/');
    </blockquote>
    以上代码我们完成了一个可以工作的 HTTP 服务器。
    使用 node 命令执行以上的代码:
    <blockquote>
    node server.js
    Server running at http://127.0.0.1:8888/
    </blockquote>

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Node.js是目前非常火热的技术,但是它的诞生经历却很奇特。 众所周知,在Netscape设计出JavaScri...
    w_zhuan阅读 8,959评论 2 41
  • Node.js Stream(流) Stream 是一个抽象接口,Node 中有很多对象实现了这个接口。例如,对h...
    FTOLsXD阅读 3,746评论 0 2
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,337评论 19 139
  • Node.js是目前非常火热的技术,但是它的诞生经历却很奇特。 众所周知,在Netscape设计出JavaScri...
    Myselfyan阅读 9,518评论 2 58
  • 回答Aero的问题。 1.你是否认为目前的中国,商业家或者资本家是否取代了传统英雄的地位,成为新时代大众眼中的英...
    周建雄key阅读 2,548评论 2 2