2019-10-25【promise】

promise()

promise一旦被实例化,promise作为参数的函数就会立即执行(初次执行),之后的任何时刻再次调用回调函数时,会将根据预设的结果执行resolve或者reject,并且将初次执行时设置的参数传递给then()或者catch()的参数函数作为参数。

```

function orderFood(){

  return new Promise((resolve,reject)=>{

    console.log('1')

    let result = makeFood()

    if(result == 'ok'){

      resolve('ok')

    }

    else{

        reject('no')

      }

  })

}

function makeFood(){ 

  return Math.random() > 0.5 ? 'ok' : 'no' 

console.log('2') 

a = orderFood()

console.log('3')

a.then(res=>console.log(res)).catch(res=>console.log(res))

```

执行结果: 

no(或者ok)

你可能感兴趣的:(2019-10-25【promise】)