Node.js概述

一、什么是 Node.js  ?
2009年由Ryan Dahl,开发,现由Node.js Foundation维护,基于Google V8引擎的JS运行环境,其运行完全脱离浏览器,可以编写独立的服务器端程序。主要用途为文件读写,网络访问,加密压缩,数据库操作等。
Node.js既可以编写客户端应用,又可以编写服务器端应用!一种语法统一前后端。

二、Node.js与javaScript

 javaScriptNode.js   
客户端技术,运行于浏览器中 服务器端技术 ,与php,jsp等是类似的技术
 有多种解释器可以使用,如IE的Chakra,FF的猴子系列,Chrome的V8等等只能运行于基于V8引擎改进而来的运行时环境 
 因为解释器有多种,所以存在代码兼容性问题只有一种解释器,所以不存在代码兼容性问题 
 支持ES对象,自定义对象,BOM&DOM对象
支持ES对象,自定义对象,Node.js扩展对象(大量) 
 主要用于网页DOM元素的操作,实现用户交互效果主要用于实现服务器端运行逻辑,如文件系统操作,数据库访问,其他服务器调用等 

三、运行Node.js
(1)交互模式 --REPL模式
读取用户输入,执行运算,输出执行结果,继续下一次循环
交互模式下,Node.js自带的模块无需引入。
(2)脚本模式
将所有语句编写在独立的脚本文件中,一次性执行
脚本模式下,除了全局对象及其相关成员外,所有其他模块中声明的对象和方法必须使用require()引入

四、Nodel.js体系结构

五、Node.js语法概述
Node.js 语法是完全基于javaScript的,下列内容与JS是完全一样的:|
--数据类型
--声明变量
---运算符
--逻辑结构
--函数作用域和闭包
--对象和原型
--对象分类
语法上,客户端JS和Node.js的最大不同点体现在由解释器所提供的扩展对象上! 

六、数据类型
(1)原始类型
string,number,boolean,null,undefined
(2)引用类型|
①ES核心对象
Global,String,Number,Boolean,Date,Math,Array,Error,Function,Object,RegExp
②Node.js对象
Buffer,ReadStream,ClientRequest...
③自定义对象
注意:Nodel.js不支持任何BOM对象和DOM对象!

七、Node.js特点
--简单,避免过度设计
--单线程逻辑处理
--非阻塞的异步I/O处理|
--事件驱动编程
--无锁机制,不会产生死锁|
--支持数万个并发链接
--Node.js适合搭建以I/O操作为主,响应速度快,易于扩展的网络应用}
--不适合CPU密集型应用

上一篇: 请勿打扰 我过得很好
下一篇: Node.js 全局对象
作者邮箱: 203328517@qq.com