初识node

作者: 姚冰coding | 来源:发表于2018-05-21 20:29 被阅读0次

Node 基础

浏览器工作原理(Node优势):事件驱动(事件轮询)和非阻塞IO处理(异步IO)
传统服务器是同步IO操作,采用线程方式处理多并发服务,线程会消耗额外的系统资源。

Node 构建简单的异步程序

var fs = require("fs");
fs.readFile("./resurce.json", function(err, data) {
  console.log(data);
});

这里的fs是node自带的模块,用于读取硬盘文件。node风格,优先处理错误,所以回调的第一个参数是err。

Node 构建 HTTP 服务器

var http = require('http');
http.createServer(function (req, res) {
    res.writeHead(200, {'Content-Type': 'text/plain'});
    res.end('Hello World\n');
}).listen(3000);
console.log("服务器运行在:http://localhost:3000");

数据流

可以把数据流看成是特殊的数组,只不过数组中的数据分散在空间上,而数据流中的数据是分散在时间上的。通过将数据一块一块的传送,开发人员可以每收到一块数据就开始处理,而不用等到数据都到了再做处理。(节省内存)

var steam = fs.createReadStream('./resource.json');
//当有新的数据准备好时候就会触发data事件
stream.on('data', function (chunk) {
    console.log(chunk)
});
//事件结束
stream.on('end', function () {
    console.log('finished');
})

管道

可以通过pipe()管道处理数据流动。

var http = require('http');
var fs = require('fs');
http.createServer(function (req, res) {
    res.writeHead(200, {'Content-Type': 'text/plain'});
    //指定一个从读取流到写出流的管道
    fs.createReadStream('./image/png').pipe(res);
}).listen(3000);
console.log("服务器运行在:http://localhost:3000");

模块

创建模块

如果模块是一个目录,Node通常会在这个目录下面找一个叫做index.js的文件作为模块的入口
exports = module.exports

导出模块

exports.fun=fun

使用模块

require(./fun.js)

异步

on():响应事件
once():响应一次事件
emit():发射事件

相关文章

  • 初识node

    Node 基础 浏览器工作原理(Node优势):事件驱动(事件轮询)和非阻塞IO处理(异步IO)传统服务器是同步I...

  • 初识 node

    Node.js是以Google V8 JavaScript引擎为基础的服务器端技术,简单的说就是运行在服务端的Ja...

  • 初识node

    1、nodeJS的特点 单线程:好处:是减少了内存开销;缺点:就是一个用户造成了线程的崩溃,整个服务都崩溃了,其他...

  • 初识node

    process.cwd(); 查看当前目录process.chdir('目录'); ...

  • Node初识

    最近出于兴趣,开始接触前端开发的相关知识。作为前端开发应用最广泛的语言,我目前接触到的就是JavaScript。在...

  • 初识 Node

    什么是 Node? 简单来说 Node.js 就是运行在服务器端的 Javascript . Node 应用组成?...

  • node学习笔记

    node.js 介绍 node.js初识 node.js 平台是基于 Chrome V8 JavaScript 引...

  • node 学习笔记.md

    Node.js第一天 1. 初识Node.js 1.1 Node.js是什么 Node.js® is a Java...

  • AJAX,node初识

    AJAX ajax是一种技术方案,但并不是一种新技术。它依赖的是现有的CSS/HTML/Javascript,而其...

  • node初识笔记

    首先nodejs不是一门全栈式语言,也不是一个框架,更不是一个库,它仅仅只是JS的运行时环境,能解析和运行js代码...

网友评论

    本文标题:初识node

    本文链接:https://www.haomeiwen.com/subject/iigqjftx.html