對象
-
-> js是面向對象的語言
-
-> js中對象是什麼:就是鍵值對
-
-
函數是一等公民。使用
-
var foo = function() {};
-
-
-
鍵值對,值可以是數字、字符串或布爾類型的數據,好比字段
-
值也可以是函數,好比方法,鍵就是變量名或函數名
關聯數組
-
o.name
-
o.sayHello()
-
在js中支持將對象當作數組使用
-
o["name"]
-
o["sayHello"]()
-
-
-> this
-
-> 在C#中,this表示當前對象(實例)
-
-> js中也是一樣
-
構造方法與對象
-
var o1 = {};
-
var o2 = new Object(); // Object的構造方法
-
// js中所有的對象類型"來自於"object
-
-
// 判斷變量是否是構造方法創建出來
-
boolean 變量 instanceof 構造方法
-
alert({} instanceof Object);
-
-
-> 什麼是構造方法
-
-> 就是普通方法
-
-> 調用的時候使用new就可以將其作爲構造方法來使用了
-
-> js沒有類,直接使用構造方法創建對象
-
-
-> 實現步驟
-
-> 創建一個函數
-
-> new這個函數
-
-
-> 添加成員
-
在構造方法中使用this.成員進行添加
-
js支持動態成員
-
-> 如果一個對象沒有定義Memeber的屬性,但是現在希望她有
只需要用"對象.Member=值",那麼就可以給這個對象創建該成員了
類型的轉換與包裝對象
-> 基本類型的轉換
-> number、boolean、string
-> 數字->字符串
-> String(數字)
-> 數字+""
-> 數字.toString()
-> 字符串轉數字
-> 字符串-0
-> Number(字符串)
-> parseInt() parseFloat()
-> 轉boolean
if(!!val) {
}
-> 包裝類型
-> 基本類型:number、string、boolean
-> 包裝類型:Number、String、Boolean
-> 基本類型不是對象,那麼就不具備方法,只是一個簡單的數據
-> 在執行諸如"num.toString()"的時候
編譯器會自動的根據num生成一個Number類型的對象,並調用toString方法
將結果返回,然後釋放Number對象,等待垃圾回收
正則表達式
在javascript中如何創建一個正則表達式
-> 字面值:var regex = /\d+/;
-> 構造函數:var regex = new RegExp("\\d+");
-> 匹配
// bool Regex.IsMatch(字符串, 正則);
// boolen 正則表達式對象.test(字符串);
-> 提取
// 提取使用方法
// 像數組的對象 正則表達式對象.exec(字符串);
// 這個對象的[0]是匹配到的結果
// 這個[1]、[2]、...是各個組
// 在正則後面加上一個g,表示全局模式
// 循環提取使用的方法與剛纔是一樣的,不同的是需要循環調用exec方法
// 每次方法匹配一個,循環匹配結束後返回null,然後又從新的一輪開始
-> 替換
string <string>.replace(正則表達式或字符串, 替換爲的字符串);
理解DOM
<html>
<head>
<title>理解DOM</title>
</head>
<body>
<p>
今天天氣<span style="color:red;font-size:30px;">很好</span>,昨天很冷...</p>
</body>
</html>