首頁(yè)技術(shù)文章正文

JavaScript 運(yùn)算符的優(yōu)先級(jí)與結(jié)合性

更新時(shí)間:2022-01-18 來(lái)源:黑馬程序員 瀏覽量:

JavaScript運(yùn)算符均有明確的優(yōu)先級(jí)與結(jié)合性。優(yōu)先級(jí)較高的運(yùn)算符將先于優(yōu)先級(jí)較低的運(yùn)算符進(jìn)行運(yùn)算。結(jié)合性是指具有同等優(yōu)先級(jí)的運(yùn)算符將按照怎樣的順序進(jìn)行運(yùn)算。結(jié)合性有向左結(jié)合和向右結(jié)合兩種。例如,表達(dá)式a+b+c,向左結(jié)合就是先計(jì)算a+b,即(a+b)+e;而向右結(jié)合就是先計(jì)算b+c,即a+(b+c)。JavaScript運(yùn)算符的優(yōu)先級(jí)與結(jié)合性如表下所示。

表 JavaScript運(yùn)算符的優(yōu)先級(jí)與結(jié)合性

1642495061982_運(yùn)算符的優(yōu)先級(jí)與結(jié)合性.png

上表中,在同一單元格的運(yùn)算符具有相同的優(yōu)先級(jí),左結(jié)合方向表示同級(jí)運(yùn)算符的執(zhí)行順序?yàn)閺淖笙蛴?,右結(jié)合方向則表示執(zhí)行順序?yàn)閺挠蚁蜃蟆?br/>

值得一提的是,表達(dá)式中有一個(gè)優(yōu)先級(jí)最高的運(yùn)算符——圓括號(hào)(),它可以提高圓括號(hào)內(nèi)部運(yùn)算符的優(yōu)先級(jí);且當(dāng)表達(dá)式中有多個(gè)圓括號(hào)時(shí),最內(nèi)層圓括號(hào)中的表達(dá)式優(yōu)先級(jí)最高。具體示例如下:

console.log(8+6*3);      //輸出結(jié)果:26
console.log((8+6)*3);    //輸出結(jié)果:42

上述實(shí)例中,表達(dá)式“8+6*3”按照運(yùn)算符優(yōu)先級(jí)的順序,先執(zhí)行乘法“*”,再執(zhí)行加法“+”,因此結(jié)果為26。而加了圓括號(hào)的表達(dá)式“(8+6)*3”的執(zhí)行順序是先執(zhí)行圓括號(hào)內(nèi)加法“+”運(yùn)算,再執(zhí)行乘法,因此輸出的結(jié)果為42。

由此可見(jiàn),為復(fù)雜的表達(dá)式適當(dāng)?shù)奶砑訄A括號(hào),可避免復(fù)雜的運(yùn)算符優(yōu)先級(jí)法則,讓代碼更為清楚,并且可以避免錯(cuò)誤的發(fā)生。


猜你喜歡:

運(yùn)算符是什么?Java運(yùn)算符詳細(xì)介紹

三元運(yùn)算符是什么?三元運(yùn)算符怎么用?

JavaScript中l(wèi)et關(guān)鍵詞聲明變量的好處

json有幾種格式?怎樣將json數(shù)據(jù)轉(zhuǎn)換成JavaScript對(duì)象?

黑馬程序員HTML前端與移動(dòng)開(kāi)發(fā)開(kāi)發(fā)培訓(xùn)

分享到:
在線咨詢 我要報(bào)名
和我們?cè)诰€交談!