标签:
$.ajax({ success: function () { $.ajax({ success: function () { $.ajax({ success: function () { complete(); } }); } }); } });
解决方案:
<script>
/*
* 拿几个setTimeout做例子。
* 一秒后输出1, 然后一秒后输出2, 然后一秒后输出3
* 原始做法是一句句嵌套下去
*/
setTimeout(function(){
//输出1
console.log(1);
setTimeout(function() {
//输出2
console.log(2);
setTimeout(function() {
console.log(3);
}, 1000);
}, 1000);
}, 1000);
/*
* 现在出现了一种比较好的写法, 就是用Promise.js来简单来写
*/
var asny = function (text) {
var promise = new Promise(function(resolve, reject) {
setTimeout(function() {
console.log(text);
resolve();
}, 1000)
});
return promise;
}
asny("1").then(function(){
return asny("2");
}).then(function () {
return asny("3");
}).then(function() {
console.log("done");
});
</script>
标签:
原文地址:http://www.cnblogs.com/facial/p/5847612.html