js高階程式設計(3) 第3章知識概要

2021-09-20 03:06:28 字數 3714 閱讀 3699

由於js高階程式設計(第三版)的第3章很瑣碎又很多,所以整理出來,方便記憶。

【基礎知識】

1.ecmascript的一切都是區分大小寫的。

2.識別符號:變數、函式、屬性的名字,或者函式的引數。

命名規則:第乙個字元必須是 乙個字母,下劃線(_)或乙個美元符號($).【不能用數字開頭】

其他字元可以是字母、下劃線、美元符號或者數字。

識別符號採用駝峰大小寫格式【第乙個字母小寫,剩下每個單詞的首字母大寫】

不能把保留字、關鍵字等作為識別符號。

3.注釋:(與c語言一致)

// 單行注釋

/*多行注釋

*/4.嚴格模式(strict mode)

在**的頂部 寫上「use strict」

嚴格模式下,一些不確定的行為會得到處理,或者丟擲錯誤。

5.語句

a. 語句以分號結尾。

b.多句語句時,建議使用**塊【使**看起來更加清晰】

6.變數:鬆散型別

var 關鍵字(未初始化時,儲存undefined)

注意:用var操作符定義的變數是該作用域中的區域性變數。

示例:function test()

test();

alert(test); // 10

ps:省略var關鍵字的時候,test變數是全域性變數。【由於全域性變數不好維護,一般不建議】

5種簡單資料型別(基本資料型別):undefined,null,boolean,number,string

1種複雜資料型別:object;

typeof操作符:用來檢測資料型別。可能返回【undefined,boolean,number,string,object,function】

注意:typeof null==object; //是正確的。

typeof (messagr) ; //()是可有可無的,並非必須。因為typeof是操作符,不是函式。

undefined型別:

變數未宣告時,儲存的值。【一般不需要,顯式讓變數值為undefined】

null型別:

表示乙個空物件指標。【變數將用來儲存物件,就先將該變數初始化為null】

boolean型別:

1.兩個值(true,false)【注意區分大小寫】

2.可對任何型別的資料使用轉型函式boolean(),會返回對應的boolean。

【有些場景會隱式轉化】

3.轉化為true的情況:true,任何非空字元,任何非零數字,任何物件;

4.轉化為false的情況:false,空字元,n/a或者0,null,undefined;

number型別:

1. 十進位制:55

八進位制:079;【第一位數必須是0,後面數為(0-7)之間】

十六進製制:0xa;【以0x開頭,後面數字可以為(0-9和a-f】

2. 在進行算術運算時,所有的十進位制和八進位制都將被轉化為十進位制。

3..浮點數【數值中必須包含乙個點,且小數點後必須有一位數字。如果沒有,會自動轉化為整型】

4.科學計數法:6個0以上的浮點數可以轉化

var floatnum=3.125e7;31250000

var floatnum=5e-7;

5. 數值範圍:5e-324 【超過這個範圍,正數轉化為infinity,負數轉化為-infinity】

isinfinity():用來判斷某個數是否在最大數和最小數直接。是則返回true.

6. nan(非數值,not a number)【表示乙個本來要返回數值的運算元未返回運算元的情況】

特點:①任何涉及nan的操作,都會返回nan.

②nan與任何值都不相等,包括本身。

isnan()函式,判斷乙個變數是否不是數值;【該方法適用於物件】

alert(isnan(10)) ; false

alert(isnan("blue")) ;true;

☆☆數值轉換:

number(),:可以用於任何資料型別

parseint(),parsrfloat()用於把字串轉換為數值。

number()轉換規則:

boolean型別:true→1;false→0;

null型別:0;

undifined:nan;

如果是字串:1.字串包含數字和有效的字串,轉換成相應的數值形式。【有前導0時會被忽略】

2.字串中包含16進製制的格式,則會被轉換為相應的十進位制數值

3. 字串為空,轉換為0

4. 有其他字元,轉換為nan

如果是物件:呼叫物件的valueof()方法,再按照前面規則轉換,結果為nan時。繼續呼叫tostring()方法繼續轉換。

parseint()用來處理整數。【如果字元的第乙個字母不是數字字元或者符號,則返回nan】

var num1=parseint("1123abc1"); //1123

var num1=parseint("abc1"); //nan

var num1=parseint("0xa"); //10

var num1=parseint(22.4); //22 小數點後部分將被截去

可提供第二個引數表示進製。[多數情況下,指定基數很有必要]

var num1=parseint("0xaf",16); //175

var num1=parseint("af",16); //175

var num1=parseint("af"); //nan

parsefloat()【只解析十進位制,沒有指定第二個基數的形式】

var num1=parsefloat("1123abc1"); //1123 整數

var num1=parsefloat("0xa"); //0 不能解析十六進製制數

var num1=parsefloat("22.25.14"); 只有第乙個小數點有效。

string型別:

1.由零個或者多個字元組成的字串。【用單引號或者雙引號表示,但是左右括號必須匹配】

2.【轉義字元】 常見的\n,換行,\t製表

3.字元的長度:str.length【任何字串的長度都可以通過length屬性取得,轉義字元表示乙個字元】

4.字元的特點:字串是不可變的。如果要改變某個變數中存的字串,必須要銷毀原來的字串,然後再用另外乙個包含新值的字串填充該變數。『

5.將其他值轉換為字串:數值,布林值,物件,字串都有tostring()方法。

var age=11;

var agestring=age.tostring(); //字串「11」

【基本不用傳入引數,如果傳入引數,表示進製數。預設時10進製】

var agestring=age.tostring(2); //字串「1011」

6.string()方法沒有限制(null 和undefined也可使用)

①.其他資料型別與tostring()一樣

②string(null); //"null"

③.string(undefinde); //"undefined"

JS高階程式設計讀書筆記 第3章

一 資料型別 謹記兩大類6小類 第一類基本資料型別 簡單資料型別 undefined null number string boolean 第二類複雜資料型別 引用資料型別 object 個人理解,它的值是乙個記憶體位址,例如 0x00000000 但是又因為指向這個位址,所以可以引用這個位址的儲存...

第3章知識點

方法宣告 修飾符 返回型別 方法名 形參 方法宣告如果形參的型別或個數不同即為過載 類都有乙個預設的構造方法,任何乙個物件的建立 都是由構造方法來建立 1.構造方法的修飾符只能是public 2.構造方法沒有返回值 3.構造方法的方法名跟類名一致 4.預設的構造方法沒有引數 5.一旦使用者自己定義了...

第3章 知識點

使用getelement系列方法訪問指定節點 getelementbyid getelementsbyname getelementsbytagname 根據層次關係訪問節點 parentnode 返回節點的父節點 childnodes 返回子節點集合,childnodes i firstchild...