node.js基本概念简单解释

本文详细解释了回调函数、同步异步、I/O操作、单线程与多线程、阻塞与非阻塞的概念,并介绍了事件、事件驱动及其回调机制,最后探讨了事件循环的工作原理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1:什么是回调函数?

2:什么是同步异步

3:什么是I/O

4:什么是单线程/多线程

5:什么是阻塞/非阻塞

6:什么是事件

7:什么是事件驱动

8:什么是事件驱动的回调

9:什么是事件循环

解释:

1:将函数作为参数,传入另外一个函数中,然后在这个函数中使用参数函数,称之为回调函数

eg: function a(){
  console.log("a")
}

function b(callback){
  callback()
};

运行: b(a)

执行结果:a  

这个就是回调函数

2:同步就是程序一步一步的执行 

eg:console.log("a");

       console.log("b");

   执行结果:a   b

在js中异步一般是采用定时器来实现 

eg: 

   function A(){
  setTimeout(function(){

    console.log("a")

  },1000)

  console.log("b")
}

这个函数的执行结果就是先输出b。 然后才输出a  在线程中解释就是开辟一个新的小路给定时器作用 先执行后面的,等小路走完在回到主线程中去,

当然在异步中,我们可以传给函数一个回调函数,这样就似乎可以实现同步的效果了

3:所谓I/O一般指的是对于数据的输入输出,通常适用于文件的导入,数据库的数据的交换等等

4:js语言时候脚本语言,也是单线程的语言,所以单线程就是一步一步的执行,必须要等到上一步完成才能执行下一步,如果上一步是死循环,那下一步还是

在等待,所以会导致程序卡死  多线程就是程序多点开花,多点执行,缺点是占用的资源多

5:阻塞/非阻塞的道理其实和线程有关系,单线程的执行上一步一直在执行,,就会产生阻塞状况,导致后面的程序无法执行 ,所以node中常使用异步的方式去实现非阻塞

6:事件就是我们的行为,例如点击按钮 呀等等

7:事件驱动就是在点击按钮的时候所发生的一些行为,比如我们点击按钮实现获取数据等等,

8:在事件函数中,加入回调函数 产生一些相应,便可以称之为事件驱动回调

9:当事件很多的请况下,会产生很多的回调函数,那么将这些函数都加入到一个栈中去依次的执行,便称之为是事件循环

转载于:https://www.cnblogs.com/allenxieyusheng/p/7233249.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值