?【异步】短小强悍的JavaScript异步调用库

短小强悍的JavaScript异步调用库

 

var queue = function(funcs, scope) {
    (function next() {
        if(funcs.length > 0) {
            funcs.shift().apply(scope || {}, [next].concat(Array.prototype.slice.call(arguments, 0)))
        }
    })()
}
 
var obj = {  
    value: null
}

queue([
    function(callback) {
        var self = this
        setTimeout(function() {
            self.value = 10
            callback(20)
        }, 200)
    },
    function(callback, add) {
        console.log(this.value + add)
        callback()
    },
    function() {
        console.log(obj.value)
    }
], obj)

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。