标签:顺序 函数的参数 同步 tin reject 参数 改变 回调函数 也有
函数是对象,函数可以当做参数被传递。将一个函数当做参数传递给另外一个函数
回调函数与同步,异步并没有直接的联系,回调只是一种实现方式,有同步回调,也有异步回调,事件处理回调,延迟函数回调......
出现回调的地方
数组的新方法 forEach/filter/map...... arr.forEach(function(){})
事件处理回调 document.onclick = function(){}
延迟函数回调 setInterval(function(){},1000)
自定义的回调
回调函数的意义
javascript是单线程的,每一次只能执行一个任务。有时候需要等到一个操作执行完成之后再执行下一个操作。
回调函数不会立马执行,会在某个特定的时间点被回调。
回调函数可以解决顺序问题。
promise
promise:承诺的意思。(状态一旦设定,不能改变)。
Promise 是异步编程的一种解决方案,比传统的解决方案——回调函数和事件——更合理和更强大。
通过new构造函数创建promise对象,构造函数的参数里面又有一个函数参数,这个函数函数里面又有两个参数(resolve,reject),一个代表成功的回调,一个是失败的回调。
Promise对象有以下两个特点
对象的状态不受外界影响。Promise对象代表一个异步操作,有三种状态:pending(进行中)、fulfilled(已成功)和rejected(已失败)
一旦状态改变,就不会再变,任何时候都可以得到这个结果。Promise对象的状态改变,只有两种可能:从pending变为fulfilled和从pending变为rejected。
pending变为fulfilled -->resolve
pending变为rejected -->reject
promise写法
promise.then(() => {成功的回调,函数做参数 });
promise.catch(() => {失败的回调,函数做参数 });
promise.then(() => { }).catch(() => { })
promise.then(() => {成功的回调,函数做参数 }, () => {失败的回调,函数做参数 });
标签:顺序 函数的参数 同步 tin reject 参数 改变 回调函数 也有
原文地址:https://www.cnblogs.com/zlf1914/p/12818298.html