8 回答

TA貢獻(xiàn)89條經(jīng)驗 獲得超53個贊
? ? 這個是三元操作符,格式為:變量=條件?值1:值2。執(zhí)行過程是這樣的:如果條件為真,則將值1賦值給變量;反之,將值2賦值給變量。例如:var txt = 5>2 ? "hello" : "javascript"; 顯然5>2為真,所以這時txt = "hello"
var zoomInTipLabel = options.zoomInTipLabel !== undefined ??options.zoomInTipLabel : 'zoom in';的意思是:如果options.zoomInTipLabel不恒等于undefined,那么就將options.zoomInTipLabel賦值給變量zoomInTipLabel;反之,將'zoom in'賦值給變量zoomInTipLabel。

TA貢獻(xiàn)3條經(jīng)驗 獲得超2個贊
!== undefined
如果這句話為true的話,就說明,options里面的zoomInTipLabel屬性未定義,也就是還不包含這個屬性。
!==與undefined比較不是說等不等于的問題,因為它和===全等()一樣,它很關(guān)心左右兩邊的值得類型是否一致,如果我現(xiàn)在左邊options.zoomInTipLabel = 'undefined',options.zoomInTipLabel ?!==?undefined 也是返回true,說明他們不全等,undefined說明變量沒有聲明 或者聲明了沒有初始化。屬性定義的時候是必須要賦予一個初值的,所以它只有可能是尚未定義。
如果你感覺答案有幫助,請采納一下

TA貢獻(xiàn)8條經(jīng)驗 獲得超7個贊
這是一個三元表達(dá)式吧,給表里zoomInTipLabel賦值,如果options.zoomInTipLabel 不等于 undefined,那么就執(zhí)行接下來的語句,如果 等于 就執(zhí)行:后面的語句。
?前是一個判斷方式,如果為真就接著執(zhí)行,如果不為真就執(zhí)行:后的語句。
if(options.zoomInTipLabel!==undefined){?? ????options.zoomInTipLabel;????????????? ???}else{ ???Zoom?in;// ???}

TA貢獻(xiàn)16條經(jīng)驗 獲得超7個贊
是原生js。 js中有兩種寫法,一種是兩個字符,比如==,!=,>=。 還有就是三個字符的,比如===,!==,>==。 三個字符表示嚴(yán)格意義上的相等,必須是類型和值都相等才為真。1==“1”為true, 1===“1”為false
添加回答
舉報