ECMAScript 3在Array.prototype中定義了一些很有用的操作數組的函數:
Array.join()方法將數組中所有元素轉化爲字符串並連接在一起:
var a = [1,2,3]; // 創建一個包含三個元素的數組
a.join(); // =>"1,2,3"
a.join('" "); // =>"1 2 3"
var b = [1,undefined];
b[3] = null; // b=[1,undefiend,<1個空的存儲位置>,null];
b.join("-"); // =>'1---'
Array.reverse()方法將數組中的元素顛倒順序,返回依序的數組:
var a = [1,2,3]; // 創建一個包含三個元素的數組
a.reverse(); // =>a的值變爲[3,2,1]
Array.sort()方法將數組中的元素排序並返回排序後的數組:
var a = [ 1, 3, null, "test", undefined, <1 個空的存儲位置>, NaN ];
a.sort(); // =>a的值變爲[ 1, 3, NaN, null, "test", undefined, <1 個空的存儲位置> ];
Array.concat()方法創建並返回一個新數組,數組連接:
var a = [1,2,3];
a.concat(4,5); // 返回[1,2,3,4,5];
a.concat([4,5]); // 返回[1,2,3,4,5];
a.concta([4,5],[6,7]); // 返回[1,2,3,4,5,6,7]
Array.slice(start,end)方法返回指定數組的一個片段或子數組:
var a = [1,2,3,4,5];
a.slice(0,3); // 返回[1,2,3];
a.slice(3); // 返回[4,5];
a.slice(1,-1); // 返回[2,3,4];
Array.splice()方法是在數組中插入或者刪除元素的通用方法
var a = [1,2,3,4,5,6,7,8];
a.splice(4); // 返回[5,6,7,8]; a是[1,2,3,4];
a.splice(1,2); // 返回[2,3];a是[1,4];
另外,splice()前兩個參數指定要刪除的數組元素,緊隨其後的人一個參數指定需要插入到數組中的元素:
var a = [1,2,3,4,5];
a.splice(2,2,[1,2],3); // 返回[3,4];a是[1,2,[1,2],3,5];
push()和pop(),push()方法在數組的尾部添加一個或者多個元素,並返回數組新的長度,pop()方法則相反:它刪除數組的最後一個元素,減少數組長度並返回他刪除的值。注意:兩個方法嗾使修改並替換原始數組而非生成一個修改版的新數組。
unshift()和shift()方法的行爲和push()和pop()類似,不一樣的是前者是在數組的頭部而非尾部進行元素的插入和刪除操作。其中unshift()是插入並返回長度,shift()是刪除並將其返回。
toString()和toLocalString():
toString()針對數組,將數組每個每個元素轉換爲字符串,並且輸出用逗號分隔的字符串列表,這裏與不使用任何參數調用join()方法返回的字符串是一樣的。
toLocalString()是toString()方法的本地化版本,調用元素的toLocalString()方法將每個數組元素轉化爲字符串,並使用本地化分隔符將這些字符串連接生成最終的字符串。