在我的脚本中,我需要检索一个字典以将编码值转换为名称:
$.ajax({
// retrieve dictionary
})
.done(function(dictionary){
// convert encoded values into names
})
.done(function(){
// run my application
});
然而,有时字典已经被另一个应用程序加载,在这种情况下我不需要 ajax 调用:
if (dictionary) {
// convert encoded values into names
// run my application
}
else {
$.ajax({
// retrieve dictionary
})
.done(function(dictionary){
// convert encoded values into names
})
.done(function(){
// run my application
});
}
这个 if/else 语句相当重,有没有办法让它变得更短:
// load dictionary if needed
// then run my application
注意:我在伪代码中使用了 $ 符号,但我不一定依赖于 jQuery。
你应该打电话$.ajax()
恰好一次,并将返回的承诺存储在您的(全局)中dictionary
多变的。
然后,每次你想使用结果时,只需写dictionary.then(...)
.
如果 AJAX 请求已完成,回调将立即运行。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)