Node的定义:一个搭建在Chrome JavaScript运行时上的平台,用于构建高速、可伸缩的网络程序。

 
Node构建与JS之上,在服务器端,Node使用V8虚拟机,执行的是本地机器码,省去了编译和解释的过程,速度更快。
 
Node为服务端JS提供了一个事件驱动(事件轮询)的、异步(非阻塞IO)的平台。能够响应更多的请求。
 
Node针对的是数据密集型实时(DIRT)程序,目标是依靠自身轻量的IO处理模型,保证响应能力,实现和浏览器一样的实时响应效果。
 
Node提供了适用各种WIndows和UNIX系统的DIRT方式,底层的IO库屏蔽了宿主操作系统的差异性,程序可以在多个设备上移植和运行。

 
示例程序:
1、读取系统文件
var fs = require('fs');
fs.readFile('./resource.json', function (err, data) {
   console.log(data)
})
 
2、响应HTTP请求
var http = require('http');
http.createServer(fuction (request, response) {
   response.writeHead(200, {'Content-Type': 'text/plain'});
   response.end('Hello World\n');
}).listen(3000);
console.log('Server running at http://localhost:3000/');
 
这是另一种写法
var http = require('http');
var server=http.createServer();
server.on('request', fuction (request, response) {
   response.writeHead(200, {'Content-Type': 'text/plain'});
   response.end('Hello World\n');
});
server.listen(3000);
console.log('Server running at http://localhost:3000/');
 
3、异步处理读取的数据流
var fs = require('fs');
var stream = fs.createReadStream('./resource.json');
stream.on('data', function(chunk) {
  console.log(chunk);
});
steram.on('end', function() {
  console.log('finished');
});
 
4、向客户端返回图片
var http = require('http');
var fs = require('fs');
http.createServer(fuction (request, response) {
   response.writeHead(200, {'Content-Type': 'image/png'});
   fs.createReadStream('./image.png').pipe(response);
}).listen(3000);
console.log('Server running at http://localhost:3000/');
 

初识Node的更多相关文章

  1. 初识node.js(通过npm下载项目依赖的包的过程)

    一.初识node.js 简单的说Node.js 就是运行在服务器端的JavaScript. Node.js 是一个基于Chrome JavaScript 运行时建立的一个平台. Node.js是一个事 ...

  2. 前端知识(一)02 初识 Node.js-谷粒学院

    目录 初识Node.js 一.Node.js的概念 1.JavaScript引擎 2.什么是Node.js 3.Node.js有什么用 二.BFF 1.BFF 解决什么问题 2.BFF是什么 三.安装 ...

  3. Node.js之路【第一篇】初识Node.js

    什么是Node.js 1.Node.js就是运行在服务端的JavaScrip. 2.Node.js是一个基于Chrome JavaScrip运行时简历的一个平台. 3.Node.js是一个非阻塞I/O ...

  4. 初识node.js

    Node.js不是一种语言:不是框架:也不是工具.它是用于运行基于JavaScript应用程序的运行时环境.

  5. .NET程序员也学Node.js——初识Node.js

    清明在石门休了八天假,一眨眼,4月又到中旬了...看到.NET在天朝彻底沦陷而又无能为力,我开始尝试去学习一些新的东西来充实自己,我自然是打死不会去学java的,没有为什么,于是乎,最近开始学习一些前 ...

  6. 什么是Node.js?带你初识Node

    什么是Node.js Nodejs是一个基于Chrome v8引擎的JavaScript运行环境 Node.js使用了一个事件驱动,非阻塞式I/O的模型,使其轻量又高效. Node.js 的包管理器 ...

  7. 1.初识Node.js

    Node.js基础知识大汇总 1.下载并安装npm,检测安装是否成功(在命令行输入node -v,看是否会输出对应版本号) 2.写一个hello world 程序. (1).打开notepad,新建一 ...

  8. Node.js实战项目学习系列(1) 初识Node.js

    前言 一直想好好学习node.js都是半途而废的状态,这次沉下心来,想好好的学习下node.js.打算写一个系列的文章大概10几篇文章,会一直以实际案例作为贯穿的学习. 什么是node Node.js ...

  9. nodejs笔记之初识node

    1.安装node; node -v  //检测node是否安装成功 node可以做什么: 搭建服务器: 读写文件: 连接数据库: 爬虫: node的模块系统: 原生模块(如http,fs); 自定义模 ...

  10. Node学习笔记---初识Node

    博客原文地址:Claiyre的个人博客 https://claiyre.github.io/ 博客园地址:http://www.cnblogs.com/nuannuan7362/ 如需转载,请在文章开 ...

随机推荐

  1. 3D数字孪生场景编辑器介绍

    1.背景 数字孪生的建设流程涉及建模.美术.程序.仿真等多种人才的协同作业,人力要求高,实施成本高,建设周期长.如何让小型团队甚至一个人就可以完成数字孪生的开发,是数字孪生工具链要解决的重要问题.目前 ...

  2. js手动触发页面元素点击事件,自定义点击事件模拟点击

    // initEvent事件已经弃用1. 创建MouseEvents事件const clickEvent = document.createEvent('MouseEvents')2. 初始化点击事件 ...

  3. springboot加入cloud,并注册到nacos

    pom.xml下新增 <dependency> <groupId>org.springframework.cloud</groupId> <artifactI ...

  4. unity resMgr

    yooAsset GitHub - tuyoogame/YooAsset: unity3d resources management system xAsset GitHub - xasset/xas ...

  5. docker 自动部署相关

    docker的作用:Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化.通俗点讲就是搭建一个运 ...

  6. TiDB日常运维手册

    1.处理dm不兼容DDL 迁移中断,执行跳过操作 tiup dm list tiup dm display xxx-dm-prod tiup dmctl --master-addr 10.0.xx.x ...

  7. FICO开发

    一.增强 1.FBL5N / 客户供应商行项目 对于客户供应商行项目报表展示增强字段: 方法① badi: FI_ITEMS_CH_DATA   更改输出内表数据即可 方法② BTE: 详见 http ...

  8. react 02 组件state click

    一,组件 import React from 'react'; import ReactDOM from 'react-dom'; import './index.css'; // 函数式组件 ret ...

  9. npm发包

    1.npm init 2.注册npm,https://www.npmjs.com/ 3.npm需要更新最新的npm 4.npm login 5.npm publish --access=public

  10. pgbouncer相关概念和使用

    pgbouncer相关概念和使用 1.pgbouncer介绍   PG 是多进程结构,每新增一个会话就会新增一个进程,相对而言对数据库的开销就会比较巨大.   因为在正常业务会话中,有不少sessio ...