JS11 -- 同步异步

时间:2020-04-16
本文章向大家介绍JS11 -- 同步异步,主要包括JS11 -- 同步异步使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

var oPromise = new Promise(function (resolve,reject) {});      // resolve成功,reject失败

Promise.all(['对象1',对象2"]).then(function () {//对象1、对象2请求成功,执行})

Promise.race(['对象1',对象2"]).then(function () {//对象1、对象2谁最快请求成功,执行})

Promise成功后,.then()可执行,根据resolve,reject函数状态

var url = 'https://hq.tigerbrokers.com/fundamental/finance_calendar/getType/2017-02-26/2017-06-10';
 
// 封装一个get请求的方法
function getJSON(url) {
    return new Promise(function(resolve, reject) {
        var XHR = new XMLHttpRequest();
        XHR.open('GET', url, true);
        XHR.send();
 
        XHR.onreadystatechange = function() {
            if (XHR.readyState == 4) {
                if (XHR.status == 200) {
                    try {
                        var response = JSON.parse(XHR.responseText);
                        resolve(response);
                    } catch (e) {
                        reject(e);
                    }
                } else {
                    reject(new Error(XHR.statusText));
                }
            }
        }
    })
}
 
getJSON(url).then(res => console.log(res));

--------------------- 
原文:https://blog.csdn.net/qq_29849641/article/details/69233788 
       function timeout(ms) {
          return new Promise((resolve, reject) => {
            setTimeout(resolve, ms, 'done');
          });
        }
        
        timeout(4000).then((value) => {
          console.log(value);
        });

Javascript异步编程的4种方法

promise

async 函数的含义和用法

原文地址:https://www.cnblogs.com/lgyong/p/10579658.html