簡體   English   中英

有人可以向我解釋這個javascript語句嗎?

[英]Can somebody explain this javascript statement to me?

我正在一個需要大量JavaScript編碼的項目中。 而且我是Java的新手。

剛剛找到一個代碼,但是不明白。 有人可以向我解釋嗎? 我試圖尋找答案,但沒有結果。

var keyCode = (e.keyCode ? e.keyCode : e.which);

我只是想知道什么? 和':'在上面的代碼中表示。 還有其他替代的編寫方式嗎?

非常感謝。

您看到的語法稱為三元運算符 if... else...語句可能不必要或太長時,通常使用它。 在上面的條件變量分配中,您會看到很多。

基本上,語法是這樣的:

([condition to test] ? [what should we do if true] : [what should we do if false])

它是速記

if([condition to test]) {
    [what should we do if true];
}
else {
    [what should we do if false];
}

在該示例中,我們嘗試分配var keyCode 由於某些瀏覽器使用e.which來傳遞按下的鍵的數字值,因此我們必須考慮e.keyCodee.which並分配適當的值。

同樣要注意的重要事項e.keyCode不一定是布爾值。 但是,在JavaScript中, 任何變量都可以解釋為布爾值。 e.keyCode布爾值false如果未定義)。

var keyCode;
if (e.keyCode) {
    keyCode = e.keyCode;
} else {
    keyCode = e.which;
}

這是if / else的簡寫。

var keyCode;
if (e.keyCode) {
    keyCode = e.keyCode;
} else {
    keyCode = e.which;
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM