在 JavaScript 中聲明數組的最佳方式
有幾種方法可以在 JavaScript 中聲明數組。本文將告訴您哪個是最好的。
什麼是數組?
數組是一種保存有序值列表的變量。每個值在數組中都有一個位置,稱為 index . 索引 可用於訪問數組中的每個值。索引是整數值,從 0 開始計數 (零)數組中的第一項。
文字構造函數——使用方括號聲明一個數組(最好的方法)
方括號 {[] ) 聲明數組的語法是最簡單和最明確 聲明數組的方式。此外,這是最好的方法,因為編碼員和計算機都清楚發生了什麼。
用這種方法聲明一個數組就像用方括號包裹一個逗號分隔值列表一樣簡單。這被稱為文字構造函數 .
下面,聲明了一個包含單獨數值 1、2 和 3 的數組:
var myArray = [1, 2, 3];
如您所見,它只是要放入新數組中的值,以逗號分隔,並用方括號括起來。
任何類型或類的值或變量在創建時都可以放入數組中:
var myArray = [3, 'dog', true, new Date()]; // Creating an array containing an integer, string, boolean, and date value
一個新的 Date() 返回一個新的 Date 對象的構造函數也包含在上面的數組中。如果在聲明數組時使用了構造函數或函數,則該函數的返回值將被添加到數組中。
您還可以通過包含 no 來聲明一個空數組 價值觀:
var myEmptyArray = [];
使用 Array() 構造函數聲明一個數組(不是最好的方式)
您經常會看到使用 Array() 聲明的數組 構造函數。我發現在使用這個時會有一些歧義,所以我傾向於避免它。
例如,下面的 JavaScript 行創建了一個包含三個未定義元素的數組 - 不是一個包含數值 3 項的數組 ):
var myArray = new Array(3);
但是,這行代碼創建了一個包含兩個數值 3 的新數組 和 4 :
var myArray - new Array(3, 4);
這是為什麼?
Array() 構造函數語法考慮了兩種場景:
- 首先,將一個數字傳遞給構造函數,然後構造函數創建一個包含該數量元素的新數組,其中每個元素都未定義。
- 第二個,逗號分隔的項目列表被傳遞給構造函數,構造函數使用該列表中的元素創建一個新數組。
這會為意外誤用打開大門。 例如,您可能正在創建其中包含數字的數組,而其中一個數組可能恰好只有一個值。使用 Array() 在這種情況下,構造函數將創建一個不包含該數字但包含一堆未定義元素的數組。
這也讓其他人(或者未來的您)更難閱讀您的代碼 - 您是要聲明一個包含五個未定義元素的數組還是聲明一個包含值為 5 的項的數組?時間> .
總的來說,最好避免。相反,請保持簡單並使用方括號。
與 JavaScript 數組有關的其他事情
我們還有很多關於 JavaScript 數組的其他文章 - 在這裡查看它們!