回调地狱:
回调函数嵌套,代码无法维护
解决回调地域:
promise:es6提供的一个构造函数 - 承诺的(自己忠贞不一)
语法:
对象 = new Promise(function(resolve, reject){
//resolve - promise中执行的代码是成功的
//如果这里的代码表示成功 - 调用resolve()
//如果这里的代码要表示失败 - 调用reject()
// promise承诺,如果调用了resolve,就一定不会调用reject,失败了就绝对不会成功
resolve() // 翠花 - 调用resolove就相当于在调用then方法中的函数
reject() // 如花 - 调用rejct就相当于在调用catch方法中的函数
})
对象的方法:
then(function(){
// 调用了resolve就相当于在执行这个函数
})
catch(function(){
// 调用了reject就相当于在执行这个函数
})
var p = new Promise(function(resolve, reject){
resolve('成功')
reject('失败')
})
console.log(p);
p.then(function(str){
console.log(str);
})
p.catch(function(str){
console.log(str);
})
promise是异步代码:
romi