① 陣列的大小和下標
宣告就用array = […]的方式,和字串不同,陣列是可變的,不只是元素可變,長度也可變,可以通過設定length和修改超過length範圍的元素來改變陣列的長度。
var a = [1, 2, 3];
alert(a+' '+a.length); // 1,2,3 3
a.length = 6; // 直接修改陣列的長度
alert(a); // 1,2,3,,,
var b = [1, 2, 3];
b[5] = 6;
alert(b+' '+b.length); // 1,2,3,,,6 6
但是為了規範寫法,最好還是不要這樣強制修改陣列的長度吧……
下面開始介紹陣列的方法
② indexof
這個方法和字串的含義基本相同,沒什麼好解釋的。
var a = [10, '20', 30, '30'];
alert(a.indexof(30)); // 2
③ slice
這個方法相當於string.substring(start, end),也很好理解。
var arr = [1, 2, 3, 4, 5];
alert(arr.slice(1, 3)); // 2,3
alert(arr.slice(2)); // 3,4,5
④ push和pop
和c++裡容器的push和pop方法也類似,特別的地方:push方法可以一次插入多個值,用逗號隔開就可以了,插入乙個陣列也可以。pop方法還會返回陣列的最後乙個元素值。
var arr = [1, 2, 3, 4, 5];
arr.push(6, 7, 8); // 與 arr.push([6, 7, 8]) 效果一致
alert(arr); // 1,2,3,4,5,6,7,8
alert(arr.pop()); // 8
⑤ shift和unshift
shift表示移動,那麼arr.shift()的意思就是將陣列往左移一格,因此最左邊的元素會被刪掉,而且陣列大小減一(如果陣列大小為0,執行shift就沒有效果了)。arr.unshift(value)的意思就是反過來,往右移,而且會在陣列左邊補上value元素,注意,也是可以補多個元素的,補多少個元素陣列大小就增加多少。
var arr = [1, 2, 3, 4, 5];
arr.shift();
alert(arr+' '+arr.length); // 2,3,4,5 4
arr.unshift(9, 8, 7);
alert(arr+' '+arr.length); // 9,8,7,2,3,4,5 7
⑥ sort
顧名思義就是排序,如果不加引數就使用預設的方法排序。sort方法會返回乙個陣列,但其實原陣列也排好序了。
var a = [3, 6, 2, 4, 5, 8, 2];
var newa = a.sort();
alert(newa + '\n' + a); // 2,2,3,4,5,6,8,下一行同
那麼array.sort的引數怎麼設定呢?比如我現在要按照從大到小排序,怎麼設定這個function引數?(先去上課,今晚繼續) JavaScript 陣列學習 常用方法 排序
new array length content 字面量 var arr var arr 1,1 l,undefined,1 arr.length 3 var arr new array 1,2,3,4,5 1,2,3,4,5 建立乙個長度為10的陣列 var arr new array 10 ar...
javascript陣列操作
push 尾部新增元素 unshift 頭部新增元素 var arr 3,5,34 arr.push 7 alert arr pop 從尾部刪除元素 shift 從頭部刪除元素 splice 起始位置,刪除的幾個,用新元素填補刪除位置 刪除元素 splice 1,2 從第二個元素往後刪除2個元素 新...
JavaScript陣列練習
找出元素 item 在給定陣列 arr 中的位置 function indexof arr,item return 1 計算給定陣列 arr 中所有元素的總和 function sum arr return sum 移除陣列 arr 中的所有值與 item 相等的元素。不要直接修改陣列 arr,結果...