前言
陣列操作後,會就地修改原陣列,或是回傳一個新陣列,並沒有一定的規則
陣列的基本觀念
陣列十字宣告陣列方式
var newArray = [];
陣列中如果要新增資料,不需要宣告屬性並且用 , 隔開就可以了
var newArray = [
1,
'字串',
false,
{
name: '小明'
}
];
console.log(newArray);
可以看到印出來的 (4) 這個數字代表陣列的長度,那麼我們知道陣列也是物件型別的資料,所以也可以新增屬性
var newArray = [
1,
'字串',
false,
{
name: '小明'
}
];
newArray.color = 'red';
console.log(newArray);
新增屬性以後會發現,陣列的長度還是沒有改變,所以新增的屬性並不會被算在陣列的資料長度中
新增陣列中的資料
除了一開始訂好的陣列結構之外,我中途想要新增陣列的內容的話,有哪些方法呢?
1. push
push 是最常用的一個方法,他會在陣列最後一個位置新增你要的值
var newArray = [
1,
'字串',
false,
{
name: '小明'
}
];
newArray.color = 'red';
newArray.push('100年');
var aa = 'aa';
newArray.push(aa);
console.log(newArray);
你可以直接在 push 後面的 ( ) 中,放入你想要傳入的資料結構,或是用一個變數承裝後,放入變數,
都可以達到一樣的效果。
2. 使用中括號 [ ]
var newArray = [
1,
'字串',
false,
{
name: '小明'
}
];
newArray.color = 'red';
newArray[5] = {x: 1};
console.log(newArray);
使用中括號還有一個特別要注意的地方就是,如果你今天跳號了,那麼中間的缺會自動補上 undefined ,並且會計算
undefined 到陣列的長度裡面。
基礎的方法就先介紹這兩種,還有很多其他處理陣列的方法,可以看先前的這篇文章 陣列補充觀念
取用陣列中的資料
要取用陣列的資料首先要先了解 索引值 (index) 的觀念,索引值是從 0 開始,而0則對應下方範例的第一筆資料,
也就是 1,索引值 1 則對應第二筆資料,也就是 '字串' …以此類推。
所以如果以這樣的結構為例,我要取得第三個布林值的 false 的話,他的索引值是 2 ,我就要使用 Array[2] ,取得資料
var Array = [
1,
'字串',
false,
{
name: '小明'
}
];
console.log(Array[2]);
注意喔,陣列取值的時候是不能用
.,例如Array.2,這樣是不行的
利用 for 迴圈將資料全部印出來
要將陣列裡的每一筆資料全部印出來,首先要先知道你的陣列的長度要怎麼取,取陣列的方法是 陣列.length
var Array = [
1,
'字串',
false,
{
name: '小明'
}
];
console.log(Array.length); // 4
再用for迴圈印出所有的陣列內容
var Array = [
1,
'字串',
false,
{
name: '小明'
}
];
console.log(Array.length); // 4
for(var i = 0; i < Array.length; i++){
console.log(Array[i]);
}
這樣就可以把陣列一個一個取出來囉!