主題:基本概念:1.區分大小寫<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
2.變量是弱類型(變量用var聲明與不聲明的區別->第19章)
3.每行結尾的分號可有可無
4.註釋同java
5.大括號表明代碼塊
主題:變量:
- 變量名:第一個字符必須是字母、下劃線(_)或美元符號($),餘下字符可以是下劃線、字母、數字或美元符號。
- 變量不一定要初始化:var test;alert(test);-》輸出”undefined”
- 變量可以存放不同類型的值
- 變量使用之前不必聲明(儘量避免)
主題:原始值和引用值:
- 原始值存儲在棧中,引用值存儲在堆中
- 原始類型:Undefined、Null、Boolean、Number、String-》String是原始類型存儲在棧中!
主題:Typeof運算符:typeof o;
返回“undefined”,如果o是Undefined類型,或o從未聲明(唯一一個可以用在未聲明的變量上的運算符)
返回“boolean”,如果o是Boolean類型
返回“number”,如果o是Number類型
返回”string”,如果o是String類型
返回"function",如果o是Function類型
返回“object”,如果o是引用類型或Null類型。---》另一個運算符 instanceof:
o instanceof string-》當o是引用類型是進一步來區分到底是那種類型
主題:Undefined類型:-》實際是從Null派生而來
1. 只有一個值undefined
2. 變量爲初始化或未聲明時typeof都返回undefined
3. 當函數無返回值時返回的也是undefined
主題:Null類型:
1.只有一個專用值null,
2.alert(null == undefined)返回true
主題:Boolean類型:
1. true,false
2. 0可以在必要時轉換成false(à轉換一節)
主題:Number類型;
1. 可以表示32爲整數或64位浮點數
2. 所有數學運算返回十進制
3. 浮點數字面量在運算前存儲的是字符串
4. 特殊Number值:Number.MAX_VALUE,Number.MIN_VALUE,
Number.POSITIVE_INFINITY,Number.NEGATIVE_INFINITY,Infinity
5. 方法isFinite()用於測試是否是無窮大
6. NaN-》表示非數值,
7. alert(NaN==NaN)->輸出false
8. isNaN()--》用於判斷是否是非數值
主題:String類型:
1. unicode編碼,16位
主題:轉換:
1. 轉換成字符串:toString()方法
Number的toString()方法有重載,可以指定轉換成的字符串是二進制,八進制等等
2. 轉換成數字:parseInt()和parseFloat()à參數必須是字符串否則返回NaN
>parseInt()->從第一個字符開始檢索字符串直到已經不是數字
var iNum1 = parseInt(“1234blue”); //returns 1234
var iNum2 = parseInt(“0xA”); //returns 10à有前導0x的默認以16進制轉換
var iNum3 = parseInt(“22.5”); //returns 22
var iNum4 = parseInt(“blue”); //returns NaN
var i1 = parseInt(“010”); //returns 8à有前導0的默認以八進制轉換
var i2 = parseInt(“010”, 8); //returns 8
var i3 = parseInt(“010”, 10); //returns 10
>parseFloat()à類似parseInt的方式檢索浮點數,不同點:字符串必須以十進制表示浮點數。
var fNum1 = parseFloat(“1234blue”); //returns 1234.0
var fNum2 = parseFloat(“0xA”); //returns NaNà只能十進制
var fNum3 = parseFloat(“22.5”); //returns 22.5
var f4 = parseFloat(“22.34.5”); //returns 22.34à第一個小數點有效
var fNum5 = parseFloat(“0908”); //returns 908à十進制
var fNum6 = parseFloat(“blue”); //returns NaN