《JavaScript語言精粹》學習筆記一
Wrightlt發表於2018-03-13
第二章 語法
鐵路圖
- 這一章介紹js的精華部分的語法,並簡單地概述js的語言結構。作者使用鐵路圖來表示js的語法。鐵路圖,又叫語法圖,是一種表示形式語法的方式,是巴科斯正規化和擴充套件巴克斯正規化的圖形化表示。鐵路圖的規則如下:
- 從左邊界開始,沿著軌道到右邊界。
- 沿途,在圓框中遇到的是字面量,在方塊中遇到的是規則或描述。
- 任何能沿著軌道走通的序列都是合法的。
- 任何不能沿著軌道走通的序列都是不合法的。
- 末端只有一個豎條的鐵路圖,表示允許在任意以對符號中間插入空白。而在末端有兩個豎條的鐵路圖則不允許。
- 注:對於分叉的軌道,若分叉的軌道彎向當前軌道前進方向則為入口,反之為出口
數字
- NaN是一個數值,它表示不能產生正常結果的運算結果。NaN不等於任何值,包括它自己。可以用函式isNaN(number)檢測NaN。
表示式
. [] () |
提取屬性與呼叫函式 |
delete new typeOf + - ! |
一元運算子 |
* / % |
乘法、 除法、 求餘 |
+ - |
加法/連線、減法 |
>= <= > < |
不等式運算子 |
=== !== |
等式運算子 |
&& |
邏輯與 |
|
|
?: |
三元 |
- 對於Js而言,typeOf運算子產生的值有'number', 'string', 'boolean', 'undifined', 'function', 'object', 'symbol'。 如果運算數是一個陣列或者null,那麼結果是'object',這其實是不對的。
- 注: 其實es6中增加了symbol型別,詳見:symbol