修改简单,判断参数,然后返回下一个允诺对象。

复制代码代码如下所示:

(函数(){())

VaR超时= setTimeout;

window.settimeout =功能(FN、时间){

如果(!时间){

时间= FN;

返回。递延(功能(DFD){

超时(函数(){())

Dfd.resolvel(DFD);

时间};

());

}

timeout.apply(窗口参数);

}

});



呼叫

复制代码代码如下所示:

setTimeout(1000)。做(功能(DNT){

console.log(DNT)

})