异步编程:
setTimeOut(function(){
document.getElementById("demo").innerHTML="异步编程";
},2000);
setTimeOut第一个参数是回调函数,第二个参数是毫秒数,它会生成一个子线程,等待2秒,然后执行回调function函数
Promise
Promise 类有 .then() .catch() 和 .finally() 三个方法,这三个方法的参数都是一个函数,.then() 可以将参数中的函数添加到当前 Promise 的正常执行序列,.catch() 则是设定 Promise 的异常处理序列,.finally() 是在 Promise 执行的最后一定会执行的序列。 .then() 传入的函数会按顺序依次执行,有任何异常都会直接跳到 catch 序列:
<script>
function print(delay,message){
return new Promise(function(resolve,reject){
setTimeout(function(){
resolve();
},delay);
});
}
print(1000,"First").then(function(){
return print(4000,"Second");
}).then(function(){
print(3000,"Third");
})
</script>
参考:菜鸟promise