昨天面試官推薦我看一部完整的js的書,在經(jīng)過選擇后,我決定看JavaScript權(quán)威指南這本書。
這本書……很厚……
由于第一章是本書的概述,所以我從第二章開始閱讀
2.1區(qū)分大小寫
JavaScript是一種區(qū)分大小寫的語言,即while和 WHILE是兩個不一樣的變量名。而在html中,html是不區(qū)分大小寫的,所以在js中控制html時,標(biāo)簽和屬性名要小寫。
2.2注釋
//
/**/
2.3直接量
直接量是程序中直接使用的數(shù)據(jù)值:
數(shù)字
小數(shù)
字符串
布爾值
正則表達(dá)式
null
復(fù)雜的表達(dá)方式則可以寫成數(shù)組或?qū)ο笾苯恿浚?/p>
{x:1,y:2}
[1,2,3,4]
2.4標(biāo)識符和保留字
標(biāo)識符就是一個名字,用來對變量和函數(shù)進(jìn)行命名,或者用于js中某些循環(huán)語句跳轉(zhuǎn)位置的標(biāo)記
保留字就是js把一些表示符拿來做自己的關(guān)鍵字,在程序中我們不能使用這些保留字作為標(biāo)識符
2.5可選的分號
在js中如果語句各自占一行,通??梢允÷苑痔?/p>
var a
a
=
3
console.log(a)
js將其解析為:
var a;
a=3;
console.log(a)
js補(bǔ)充分號的通用規(guī)則:
如果當(dāng)前語句和下一行語句無法合并解析,js會在第一行后面填加分號
然而這個規(guī)則可能會導(dǎo)致一些意想不到的情形:
var y=x+f
(a+b).toString()
js將其解析為
var y=x+f(a+b).toString()
所以,如果一條語句以"(","[","/","+","-"開始則極有可能出現(xiàn)上述情況,需要注意在上面的語句中加分號
值得注意的是:
在return continue和break后的表達(dá)式不能有換行,如果增加換行,程序只有及特殊情況會報錯,調(diào)試十分不方便
在涉及++和--運(yùn)算符也需要自行添加;負(fù)責(zé)js很有可能將其作為表達(dá)式的后綴