位置:首頁 > 軟件操作教程 > 編程開發(fā) > JavaScript > 問題詳情

JavaScript void 運(yùn)算符

提問人:劉團(tuán)圓發(fā)布時(shí)間:2020-11-24

■知識(shí)點(diǎn)

void是一元運(yùn)算符,它可以出現(xiàn)在任意類型的操作數(shù)之前執(zhí)行操作數(shù),但卻忽略操作數(shù)的返回值,會(huì)返回一個(gè)undefined。void常用于HTML腳本中執(zhí)行JavaScript表達(dá)式,但不需要表達(dá)式的計(jì)算結(jié)果。

■實(shí)例設(shè)計(jì)

在下面的代碼中,使用void運(yùn)算符讓表達(dá)式返回undefined。

var a = b = c = 2;                          //定義并初始化變量的值

d = void (a -= (b *= (c += 5)));    //執(zhí)行void運(yùn)算符,并把返回值賦予給變量d

console.log(a);                             //返回-12

console.log(b);                             //返回14

console.log(c);                             //返回7

console.log(d);                     //返回 undefined

    由于void運(yùn)算符的優(yōu)先級(jí)比較高(14),高于普通運(yùn)算符的優(yōu)先級(jí),所以在使用時(shí)應(yīng)該使用小括號(hào)明確void運(yùn)算符操作的操作數(shù),避免引發(fā)錯(cuò)誤。

    在下面的兩行代碼中,由于第1行代碼沒有使用小括號(hào)運(yùn)算符,則void運(yùn)算符優(yōu)先執(zhí)行,返回值undefined再與1執(zhí)行減法運(yùn)算,所以返回值為NaN。在第2行代碼中由于使用小括號(hào)運(yùn)算符明確void的操作數(shù),減法運(yùn)算符先被執(zhí)行,然后再執(zhí)行void運(yùn)算,最后的返回值是undefined。

console. log (void 2 - 1); //返回 NaN

console. log (void (2 - 1)); "返回 undefined

繼續(xù)查找其他問題的答案?

相關(guān)視頻回答
回復(fù)(0)
返回頂部