js運算符優(yōu)先級

  1. 優(yōu)先級

運算符的優(yōu)先級決定了表達(dá)式中運算執(zhí)行的先后順序,優(yōu)先級高的運算符最先被執(zhí)行

  1. 結(jié)合性

結(jié)合性決定了擁有相同優(yōu)先級的運算符的執(zhí)行順序

  1. 匯總表

https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Operators/Operator_Precedence

  1. 屬性運算符 . 和 []
  1. object.property

property 必須是有效js標(biāo)識符 不能以數(shù)字開頭

如果對數(shù)字字面量使用方法,并且數(shù)字文字沒有指數(shù)且沒有小數(shù)點,請在方法調(diào)用之前的點之前留出空格,以防止點被解釋為小數(shù)點

77 .toExponential();
// or
77
.toExponential();
// or
(77).toExponential();
// or
77..toExponential();
// or
77.0.toExponential();
// because 77. === 77.0, no ambiguity
  1. [key] 如果key 不是字符串 會強轉(zhuǎn)成字符串
var foo = {unique_prop: 1}, bar = {unique_prop: 2}, object = {};
object[foo] = 'value';
console.log(object[bar]===object[foo]);//true
  1. new 運算符

當(dāng)代碼 new Foo(...) 執(zhí)行時:

? 1. 一個新對象被創(chuàng)建。它繼承自Foo.prototype。

? 2. 使用指定的參數(shù)調(diào)用構(gòu)造函數(shù)Foo,并將 this綁定到新創(chuàng)建的對象。

? 3. new Foo 等同于 new Foo(),只能用在Foo 不傳遞任何參數(shù)的情況。

? 4. 如果構(gòu)造函數(shù)返回了一個“對象”(返回其他類型無效),那么這個對象會取代整個new出來的結(jié)果。

? ?如果構(gòu)造函數(shù)沒有返回對象,那么new出來的結(jié)果為步驟1創(chuàng)建的對象。
(一般情況下構(gòu)造函數(shù)不返回任何值,不過用戶如果想覆蓋這個返回值,可以自己選擇返回一個普通對象來覆蓋。當(dāng)然,返回數(shù)組也會覆蓋,因為數(shù)組也是對象。)

優(yōu)先級面試題:https://www.v2ex.com/t/351261

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 134,923評論 18 139
  • 前言 把《C++ Primer》[https://book.douban.com/subject/25708312...
    尤汐Yogy閱讀 9,536評論 1 51
  • 前言 人生苦多,快來 Kotlin ,快速學(xué)習(xí)Kotlin! 什么是Kotlin? Kotlin 是種靜態(tài)類型編程...
    任半生囂狂閱讀 26,276評論 9 118
  • 函數(shù)和對象 1、函數(shù) 1.1 函數(shù)概述 函數(shù)對于任何一門語言來說都是核心的概念。通過函數(shù)可以封裝任意多條語句,而且...
    道無虛閱讀 4,657評論 0 5
  • 16-18,100% 微信掌控了大部分成年網(wǎng)民,而互聯(lián)網(wǎng)的原住民95后,00后是伴隨著qq長大的,qq手機端的出擊...
    咖啡伴讀閱讀 305評論 0 0