1. Object類型 創建對象的方式 1) 構造函數方式 var obj = new Object(); // Object為構造函數 2)字面量方式 var obj = {} 2. Array類型 ECMAscript數組的每一項可以保存任何類型的數據 創建數組的方式 1)var color = ...
1. Object類型
創建對象的方式
1) 構造函數方式 var obj = new Object(); // Object為構造函數
2)字面量方式 var obj = {}
2. Array類型
ECMAscript數組的每一項可以保存任何類型的數據
創建數組的方式
1)var color = new Array();
如果預先知道數組要保存的項目數量,可以給構造函數傳遞改數量,該數量會自動變成length屬性的值
var arr = new Array(20);
也可以向構造函數中傳遞數組中應該包含的項
var arr = new Array('xhk', 'coco', 'lover');
如果給構造函數傳遞一個值
這個值是數字, 創建包含給定項數的數組,
這個值是其他類型參數,創建包含這個值只有一項的數組
使用Array構造函數的時候可以省略new操作符
var arr = Array(3);
2) 數組字面量 var arr = [];
檢測數組
instanceof Array
棧方法(後進先出)
push(): 接受任意數量的參數,把他們逐個添加到數組末尾,並返回修改後的數組的長度。
pop(): 從數組末尾移除最後一項,減少數組的長度,並返回被移除的項。
隊列方法(先進先出)
隊列在列表的末端添加項,從列表的前端移除項。
shift(): 從數組前端移除項,並返回該項。
unshift(): 在數組前端添加任意個項並返回新數組的長度。
重排序方法:reverse() sort()
reverse(): 反轉數組項的順序, 返回重新排序後的數組。
sort(): 預設按升序排列數組項,小到大,為了實現排序sort()方法會調用每個數組項的toString()轉型方法,然後比較得到字元串,以確定如何排序,即使數組中的每一 項都是數值,sort()方法比較的也是字元串。返回重新排序後的數組。
var arr = [0, 1, 5, 15, 20]; // [0, 1, 15, 20, 5]
操作方法
concat(): 先創建一個當前數組的副本,然後將接收到的參數追加到這個副本的末尾,返回新構建的數組。如果傳遞給concat()方法的是一個或多個數組,該方法會將這 些數組中的每一項都添加到結果數組中。原數組不變。
slice(): 基於當前數組的一個或多個項創建一個新數組。接受一個或兩個參數,參數一:返回項的起始位置;參數二:返回項的結束位置;
不會影響原始數組
如果只有一個參數,則返回從該參數指定位置到數組末尾的所有項。
如果兩個參數,返回起始和結束位置之間的項, 不包含結束位置的項。
如果slice()方法的參數中有一個是負數,則用數組長度加上該數來確定相應的位置,eg: arr.length = 5; slice(-2, -1); 實際上應該返回slice(3, 4)這一段新數組;
splice(): 向數組中部插入項。返回包含從原始數組中刪除的項。如果沒有刪除任何項,則返回一個空數組。
1)刪除:刪除任意數量的項:返回被刪除的項;兩個參數,參數一,要刪除的第一項的位置,參數二,要刪除的項數。
2)插入:指定位置插入任意數量的項,參數一,起始位置;參數二,0(要刪除的項數);參數三,要插入的項
3) 替換:向指定位置插入任意數量的項,且同時刪除任意數量的項。參數一,起始位置;參數二,要刪除的項數;參數三,要插入的任意數量項。
位置方法
indexOf(): 參數:參數一,要查找的項,參數二,(可選)表示查找起點位置的索引;從數組的二開頭向後開始查找, 返回查找的項在數組中的位置
lastIndexOf():參數:參數一,要查找的項,參數二,(可選)表示查找起點位置的索引;從數組的末尾開始向前查找,返回查找的項在數組中的位置
迭代方法
每個方法都接受兩個參數,參數一,在每一項上運行的函數,參數二,(可選),運行該函數的作用域對象——影響this的值
every(): 對數組中的每一項運行給定的函數,如果該函數的每一項都返回true,則返回true;
filter(): 對數組中的每一項運行給定的函數,返回該函數會返回true的項組成的數組;查詢符合某些條件的所有數組項有用。
forEach(): 對數組中的每一項運行給定的函數,沒有返回值。
map():對數組中的每一項運行給定的函數,返回每次函數調用的結果組成的數組。適合創建包含的項與另一個數組一一對應的數組。
some():對數組中的每一項運行給定的函數,如果該函數對任一項返回true,則返回true。
歸併方法
都是兩個參數,參數一,在每一項上調用的函數;參數二,(可選),作為歸併基礎的初始值。第一次迭代發生在數組的第二項。
reduce(), reduceRight():接受四個參數,參數一,前一個值;參數二,當前值;參數三,項的索引;參數四,數組對象。函數返回的任何值都會作為第一個參數傳 給下一項。
reduce():從數組的第一項開始,逐項遍歷到最後,
reduceRight():從數組的第一項開始,逐個遍歷到最後。
Date類型
var date = new Date();
Date.parse():根據字元串參數返回相應的日期毫秒數;
Date.now(): 返回調用這個函數時的日期和時間的毫秒數;
var start = +new Date(); // 使用+操作符獲取Date對象的時間戳;
RegExp類型
var pattern = new RegExp('匹配的字元串模式', '可選的標誌字元串');
RegExp實例方法
exec(要應用模式的字元串):專門為捕獲而設計,返回包含第一個匹配項信息的數組,沒有匹配項的情況下返回null;
test(字元串參數):在模式與改參數匹配的情況下返回true,否則返回false。是否匹配,不需要知道內容的情況下使用。