《Javascript高級程序設計》讀書筆記——ECMAScript基礎(1)

主題:基本概念:1.區分大小寫<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

         2.變量是弱類型(變量用var聲明與不聲明的區別->19章)

         3.每行結尾的分號可有可無

         4.註釋同java

         5.大括號表明代碼塊

主題:變量:

  1. 變量名:第一個字符必須是字母、下劃線(_)或美元符號($),餘下字符可以是下劃線、字母、數字或美元符號。

  2. 變量不一定要初始化:var testalert(test);-》輸出”undefined”

  3. 變量可以存放不同類型的值

  4. 變量使用之前不必聲明(儘量避免)

主題:原始值和引用值:

  1. 原始值存儲在棧中,引用值存儲在堆中

  2. 原始類型:UndefinedNullBooleanNumberString-String是原始類型存儲在棧中!

主題:Typeof運算符:typeof o

返回“undefined”,如果oUndefined類型,或o從未聲明(唯一一個可以用在未聲明的變量上的運算符)

返回“boolean”,如果oBoolean類型

返回“number”,如果oNumber類型

返回”string”,如果oString類型

返回"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.      truefalse

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()方法

NumbertoString()方法有重載,可以指定轉換成的字符串是二進制,八進制等等

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

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章