HTTP相关概念

1、什么是回调

(回调是异步编程最基本的方法,需要按顺序执行异步逻辑的时候,一般采用后续传入的方式,也就是将后续程序封装在函数中作为起始函数的参数,逐层去嵌套)

function hello(src){console.log(src)};

function add(callback,src){

     callback(src);

}

add(hello,'ni hao');

2、什么是同步、异步

(同步就是顺序执行一个任务)

var i = 0;

while(true){

     i++;

}

(异步是不按照顺序执行函数)

var c = 0;

function printIt(c){

     console.log(c)

}

function plus(callback){

   setTimeout(function(){

      c+ =1;

   callback(c);

},1000);

}

plus(pritIt));

3、什么是I/O

(磁盘的写入和读出)

4、什么是单线程、多线程

(单线程即一个时间内只能执行一个函数完成一件事)

(多线程在一个时间内可以完成多件事)

5、什么是阻塞、非阻塞

(阻塞事件会被挂起)

6、什么是事件

(如点击是一个事件)

7、什么是事件驱动

(为某个事件注册回调函数,但是这个回调函数不是立刻执行,只有在事件发生的时候回调才会被执行,这种方式称为事件驱动)

8、什么是基于事件的回调

9、什么是事件循环

(事件循环是一个先进先出的队列,当一个事件发生的时候,该事件对应的回调函数会被压人队列中被执行)