对promise的理解

发布时间 2023-09-26 19:59:00作者: 绿芽在岩上

认真学习前端第六天9.25

1.声明函数的方法:1.function foo(){};调用:foo();2.匿名函数function(){};调用:(function(){})()3.var foo =function(){};调用:foo()4.let foo = () =>();调用:foo();5.let foo = new Function('a','b','return a+b');直接执行
2.创建promise,let foo=new Promise(()=>())
3.const fn = () =>{new Promise(()=>())},这里promise被包裹在函数里,就不会立即执行
4.Promise.resolve().then()放在微队列里
5.Promise里的宏任务就是整体的宏任务
6.链式调用:promise.then().then()第二个是第一个then返回的Promise没有返回值就是undefined;返回任意非promise会被包裹成promise.resolve();return new Error('error!!!')=>return Promise.resolve(new Error('error!!!'))
7.promise.then()或者.catch()返回值不能是promise本身,否则会造成死循环,从而报错
8.promise.then(()=>)或者catch里要是函数,否则会发生透传,resolve()的值直接传到最后一个then里
9.promise.reject().then(res=>(),err=>()).catch();reject被err执行
10.react可以说All in javascript,函数式的思想
11.webpack
  1.安装:npm install webpack -g
  2.四个核心概念:entry(入口),output,loader(装载机--webpack只能处理js,css需要用loader),plugin(插件,处理loader不能完成的工作)
  3.打包流程:初始化参数->开始编译->确定入口->编译模块->完成编译并输出->打包完成
12.http和https的区别:https有加密ssl/tls更安全,响应慢,端口号是443,http是80
13.tcp三次握手:客户端发SYN包给服务器,客户端等待确认->服务器接收并确认,向客户端发送SYN包->客户端收到并发送ACK包,发完完成三次握手