侧边栏壁纸
博主头像
落叶人生博主等级

走进秋风,寻找秋天的落叶

  • 累计撰写 130562 篇文章
  • 累计创建 28 个标签
  • 累计收到 9 条评论
标签搜索

目 录CONTENT

文章目录

HTTP概念

2024-05-12 星期日 / 0 评论 / 0 点赞 / 92 阅读 / 1936 字

1 回调: function result(something) { console.log(something)}function getData(callback, something) {

1 回调:

function result(something) {    console.log(something)}function getData(callback, something) {    something += ' is cool'    callback(something)}getData(result, 'Nodejs')// 匿名函数getData(function (something) {    console.log(something)},'Angularjs')

结果:

Nodejs is cool

Angularjs is cool

 

同步:顺序执行,等待事件完成后执行

var c = 0function print() {    console.log(c)}function plus() {    c += 1}plus()print()

结果:1

异步:非顺序执行,当事件执行的同时执行

var c = 0function print() {    console.log(c)}function plus(callback) {    setTimeout(function () {        c += 1        callback()    },1000)}plus(print)

结果:1(1秒后显示)

 

3 I/O

磁盘的读和写

 

4 单线程/多线程

单线程:每次执行一个事件

多线程:每次可以执行多个事件

 

5 阻塞/非阻塞

阻塞:挂起状态,不允许执行下一个操作

非阻塞:及时操作未完成,也可以执行下一个操作

 

6 事件和事件驱动

function click(e) {    window.alert('Button is clicked')}// 点击按钮触发回调函数document.getElementById('button').addEventListener('click',click)

 

7 基于事件驱动的回调

click方法

 

8 事件循环

回调函数队列,异步执行函数的时候,回调函数被压入这个队列,回调按照被压入的顺序执行,先进先出。

 

总结:NodeJS是单线程,非阻塞,事件驱动

广告 广告

评论区