标签:col call ISE 用法 eth 直接 自带 func 方法
//手写异步
// 在js中只要看到异步首先想到回调函数,将后续要做的事传入当前要做的事里面,当前的事做好后开始做后面的事
function buy(callback) {
setTimeout(function () {
var a="我做完饭了";
callback(a);
},2000)
}
buy(function cookie(val) {
console.log(val)
});
//promise是自带的用来解决回调问题d的类,可以直接new.有三个状态:等待,成功,失败
//promise的实例天生自带一个then方法,then方法有两个参数,第一个参数表示成功第二个表示失败
let p=new Promise((resolve,reject)=>{//回调函数直接运行默认是等待状态,什么时候某个参数执行了,状态发生改变
var a="北京";
resolve(a);//当调用resolve时表示成功,触发then里的第一个参数
});
p.then((data)=>{console.log(data)},(err)=>{});
//promise比我们自己写的好处就是不用我们自己传递函数了
promise封装ajax
function ajax({url="", method="get",datatype="json"}) { return new Promise((resolve,reject)=>{ var xhr=new XMLHttpRequest(); xhr.open(method,url,true);//参数顺序!!! xhr.responseText=datatype, xhr.onload=function () { resolve(xhr.response);//获取数据成功调取成功的方法 }; xhr.onerror=function (err) { reject(err) } xhr.send() }) } // ajax({url:"shopping.json"}).then((data)=>{this.products=JSON.parse(data)},(err)=>{console.log(err)}) //我们自己写的ajax用法和axios一样。axios就是类似这样封装的。。 // 函数执行返回一个promise对象
标签:col call ISE 用法 eth 直接 自带 func 方法
原文地址:https://www.cnblogs.com/zlsqd/p/11335301.html