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

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

更新時間:2022-01-18 來源:黑馬程序員 瀏覽量:

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

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

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

上表中,在同一單元格的運算符具有相同的優(yōu)先級,左結(jié)合方向表示同級運算符的執(zhí)行順序為從左向右,右結(jié)合方向則表示執(zhí)行順序為從右向左。

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

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

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

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


猜你喜歡:

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

三元運算符是什么?三元運算符怎么用?

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

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

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

分享到:
在線咨詢 我要報名
和我們在線交談!