node.js特点|学习笔记

简介: 快速学习 node.js 特点

开发者学堂课程【Node.js 入门与实战node.js 特点】学习笔记,与课程紧密联系,让用户快速学习知识

课程地址https://developer.aliyun.com/learning/course/588/detail/8243


node.js 特点

 

node.js 有哪些特点

1.事件驱动(当事件被触发时,执行传递过去的回调函数)

什么叫做事件驱动?

事件驱动就是当某个事件触发以后,执行的某段代码在浏览器端是直接性的事件。node.js也是事件驱动。

在写代码时,给它传一个回调函数进去,然后当这个事件触发后,自动执行回调函数,这就是所说的事件驱动。

2. 非阻塞I/O模型(当执行I/0操作时,不会阻塞线程)

什么叫做非阻塞I/O模型呢?

就是当node.js执行I/O操作的时候【I/O是输入输出,I/O操作可能是磁盘I/O(比如,在磁盘上写文件,从磁盘读取文件),也可能是网络I/O(比如网络中发送一些数据,从网络中接收一些数据)】,当遇到这些操作时,本来输入输出操作是比较耗时的,这时候会阻塞程序,只有在输入输出完毕以后才能继续执行。 

但CS是非阻塞I/O模型,也就意味着在CS里面,当执行文件读写或者网络读写的时候,这个程序不会被阻塞,会直接基于网络过程走。不会阻塞主程序的运行

3.单线程

 node.js在浏览器端是单线程的,在CS端也是单线程的。

4.拥有世界最大的开源库生态系统-npm.

node.js内置提供的NPM,作为开发平台,会内置一些特定功能的API,内置这些API是有限的,但只要是能想到的功能,肯定已经有人写好了。这个写好代码在哪儿呢?

就在这个NPM这个代码上,它有一个非常丰富的开源生态系统,就是说node.js在运用的时候肯定会有各种各样的功能。它拥有世界上最大的开源库生态系统。

NPM上保存了所有的各种各样的JS的开源代码,这开源代码里面包含了各种各样功能。

想到的功能基本上别人就已经写好了,可直接拿来用。

在写代码的时候就不用从头开始,要做的是先把功能实现,然后再学习它是如何实现的。

 

相关文章
|
3月前
|
JavaScript 前端开发 API
Vue学习笔记3:对比纯JavaScript和Vue实现数据更新的实时视图显示
Vue学习笔记3:对比纯JavaScript和Vue实现数据更新的实时视图显示
|
3月前
|
Prometheus 监控 Cloud Native
prometheus学习笔记之node-export
prometheus 监控 node-exporter
|
2月前
|
JavaScript 前端开发
【干货分享】JavaScript学习笔记分享
【干货分享】JavaScript学习笔记分享
58 0
|
3月前
|
Web App开发 前端开发 JavaScript
HTML/CSS/JS学习笔记 Day3(HTML--网页标签 下)
HTML/CSS/JS学习笔记 Day3(HTML--网页标签 下)
|
4月前
|
Java jenkins Shell
jenkins学习笔记之五:Maven、Ant、Gradl、Node构建工具集成
jenkins学习笔记之五:Maven、Ant、Gradl、Node构建工具集成
|
5月前
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp的云的学习笔记系统附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp的云的学习笔记系统附带文章源码部署视频讲解等
41 0
|
7月前
|
移动开发 JavaScript 前端开发
webgl学习笔记3_javascript的HTML DOM
webgl学习笔记3_javascript的HTML DOM
65 0
webgl学习笔记3_javascript的HTML DOM
|
7月前
|
JavaScript 前端开发 Java
webgl学习笔记2_javascript基础快速学习
webgl学习笔记2_javascript基础快速学习
54 0
|
7月前
|
前端开发 JavaScript API
JavaScript学习笔记(一)promise与async
JavaScript学习笔记(一)promise与async
|
7月前
|
存储 JavaScript
【ES6系列第二篇】适用JS初学者的Set对象和Map对象学习笔记
【ES6系列第二篇】适用JS初学者的Set对象和Map对象学习笔记
52 0