码迷,mamicode.com
首页 > 其他好文 > 详细

node 学习(一)

时间:2018-01-21 23:57:33      阅读:186      评论:0      收藏:0      [点我收藏+]

标签:plain   content   rip   服务   通过   技术分享   UI   单线程   read   

什么是 Node.js

  Node.js就是运行在服务端的JavaScript。

  Node.js是一个基于Chrome JavaScript运行时建立的一个平台。

  Node.js是一个事件驱动 I/O 服务端的JavaScript环境。基于Google v8引擎

接下来我们创建第一个应用  server.js

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(3000);

// 终端打印如下信息
console.log(‘Server running at http://127.0.0.1:3000/‘);

运行 node server.js  可以启动上服务

Node.js REPL (交互式解析器 --> Read-Eval-Print-Loop)

  命令:node 进入   执行    打印   循环 ;   ctrl+c 两下退出

技术分享图片

Node.js 的回调函数

  Node.js的异步编程的直接体现就是回调

d2.txt

  文件中 写入 Rain_tdk

fs.js

var fs = require(‘fs‘)

//阻塞代码执行的写法
var ds = fs.readFileSync(‘d2.txt‘)
console.log(ds.toString())
console.log(‘阻塞代码执行‘)

//非阻塞代码执行的写法
fs.readFile(‘d2.txt‘,function (err,data) {
    if(err) console.log(err);
    console.log(data.toString())
})
console.log(‘不阻塞代码执行‘)

执行结果:     技术分享图片  非阻塞代码的写法能极大的提高Node.js 的性能(提醒:Node.js 中所有的api 都支持回调函数)。可以处理大量的并发请求。

 

Node.js事件回调

  Node.js是单进程单线程应用程序,但是可以通过事件和回调支持并发,所以性能很高。

  Node.js的每一个api都是一部操作的,并作为一个独立的线程运行,使用异步函数调用,并发处理。

  Node.js基本上所有的事件机制都是用设计模式中的观察者模式实现的。

  Node.js 单线程类似进入一个while(true)的事件循环,直到没有事件观察者退出,每个异步事件都生成一个事件观察者,如果有事件发生就调用该回调函数.

 

node 学习(一)

标签:plain   content   rip   服务   通过   技术分享   UI   单线程   read   

原文地址:https://www.cnblogs.com/web-Rain/p/8319554.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!