初识js异步

// js是一门单线程的语言

// 异步
// 一个步骤花费的时间过多,然后影响后面的效率,就会进行异步处理
// 1.多线程


// 2.单线程非阻塞式
// 代码从上往下执行,将繁琐任务先读取然后扔到任务队列里面,
// 任务队列 :所有的代码执行以后,在执行任务队列里面的代码
// let i = 10;
// setTimeout(function () {
// i = 50;
// console.log(i); 50

// }, 10);
// setTimeout(function () {
// i = 100;
// console.log(`我是第二个${i}`);
// }, 10)

// console.log(`我是第三个${i}`); 10
// let pm = new Promise(function (resolve, reject) {
// //dosomething
// });
// console.log("go on");
// pm.then(function () {
// console.log("异步");
// });
// 回调地狱
// 解决方法
// Promise
// new Promise(function(reaolve,reject){

// });
// Promise是一个同步
// 一旦里面调用了resolve或者reject方法的时候,这个方法就是异步,会放到任务队列里面去,最后执行完了同步的代码再执行
// 同样是异步的时候的任务,resolve的优先级高于setTimeout,执行顺序
// setTimeout(function () {
// console.log("hello")
// });
// let pm = new Promise(function (resolve, reject) {
// console.log('haha'); //
// resolve(); // 触发then
// // reject();//触发失败catch
// console.log('nihao')

// });
// // then表示成功的时候调用这个then方法
// pm.then(function () {
// console.log('成功');
// });
// console.log('666')
// // pm.catch(function () {
// // console.log('失败');
// // });

猜你喜欢

转载自www.cnblogs.com/xiaozhou619/p/9827089.html