球员, 我正在考虑用我自己的函数替换window.setTimeout(例如,我们可以为回调中抛出的异常设置一个通用的错误处理程序)。
代码将沿着以下几行:
var nativeSetTimeout = window.setTimeout;
window.setTimeout = function(fn, interval){
nativeSetTimeout(function(){
try{
fn();
}catch(e){
// handle errors coming from the execution of fn
}
}, interval);
}
鉴于我的应用程序将保留在一个iframe中,是否有任何我应该关注的未解决问题?
答案 0 :(得分:4)
我不会这样做,因为它可以帮助您自己的开发,但替换标准功能可能会破坏第三方库。
基本上,使用您自己的功能而不替换标准功能应该是可行的方法。在代码中使用它。
答案 1 :(得分:1)
你可以这样做,但除非你故意试图拦截现有代码或第三方库的行为,否则只需编写一个带有替代名称的包装器就更清楚了,例如function setSafeTimeout(fn, timeout) { ... ; return setTimeout(fn, timeout);}
。