### 什麼是陣列? - 是一種用來存儲元素集合的**數據結構**。陣列是一個有序的、可迭代的、可修改的集合,每個元素都有一個唯一的索引(index),通常是以零為起始。 ### 宣告陣列的方式 - 傳統的宣告方式。 ```js var arr = new Array(); console.log(arr) // array ``` - 實體語法。 ```js var arr = []; console.log(arr) // [] ``` - 以目前來說我們**更建議使用實體語法**。 ### 基本的使用與序列(索引) - 我們會以`,`來做一個索引排列: - 然而,在陣列裡頭,要取得1,並非用數學的1來看待,而是從0開始的。 ```js const arr = [1, 2, 3]; console.log(arr[0]); // 取得 arr 陣列裡面的第一個索引值,也就是:1 ``` ### JavaScript 的 array 可以塞各種資料型別: - 如下案例: - 由下列案例來看,你可以看到這筆陣列有非常多的資料型態。 ```js const arr = [ 1, // number false, // boolean { // object name: `Tony`, address: `111 Main St.`, }, function (name) { // object , 函數也屬於 object const greeting = "hello"; console.log(greeting + name); }, "hello", // string ]; console.log(arr); ``` - 所以執行 arr 這個資料結構變數會報錯誤嗎? - no, 你可以看到以下的輸出結果: ```js [1, false, {…}, ƒ, 'hello'] ``` - 呼叫陣列內的函數,並且充分利用物件內的名稱來完成本範例: ```js const arr = [ 1, // 0 false, // 1 // 2 { name: `Tony`, address: `111 Main St.`, }, // 3 function (name) { const greeting = "hello, "; console.log(greeting + name); }, "hello", ]; arr[3](arr[2].name); // outputs: hello, Tony ```