gpt4 book ai didi

javascript - 谁能给我关于javascript中的这个语法

转载 作者:行者123 更新时间:2023-11-29 16:23:55 27 4
gpt4 key购买 nike

function getTime(zone, success) {
var url = 'http://json-time.appspot.com/time.json?tz=' + zone,
ud = 'json' + (+new Date());
window[ud]= function(o){
success && success(new Date(o.datetime), o);
};
document.getElementsByTagName('head')[0].appendChild((function(){
var s = document.createElement('script');
s.type = 'text/javascript';
s.src = url + '&callback=' + ud;
return s;
})());}

window[ud]有什么用,success && success()是什么意思?另一个问题是为什么在匿名函数外调用appendChild时最后一行需要多一对括号?

最佳答案

success && success(...) 基本上意味着“如果 success 存在,则调用 success()”。它等效于以下内容:

if(success) {
success(new Date(o.datetime), o);
}

window[ud] 表示“名为 udwindow 属性”。因此,如果 ud 是(例如)"json12341234" 那么它将等同于 window.json12341234

额外的一对括号调用匿名函数。因此,您传递的不是该函数,而是结果。

关于javascript - 谁能给我关于javascript中的这个语法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8114464/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com