搜尋
首頁web前端前端問答Javascript中什麼是數組

Javascript中什麼是數組

Nov 26, 2021 pm 03:55 PM
javascript陣列

在Javascript中,數組是一組按順序排列的資料的集合,數組中的每個成員被稱為元素,每個元素的名稱(鍵)被稱為數組下標。 js數組可以利用「[]」和「Array()」兩種方式來創建,數組中所包含的資料可以是任意類型的。

Javascript中什麼是數組

本教學操作環境:windows7系統、javascript1.8.5版、Dell G3電腦。

JavaScript 陣列(Array)是有序資料的集合,數組中的每個成員被稱為元素(Element),每個元素的名稱(鍵)被稱為數組下標(Index)。

陣列中可以包含任意類型的資料;陣列的長度是彈性的、可讀寫的。

建立陣列

JavaScript 定義(建立或宣告)陣列的方法有兩種:建構陣列和陣列直接量。

1、建構陣列

使用 new 運算子呼叫 Array() 類型函數時,可以建構一個新陣列。

var a = new Array();  //空数组
var a = new Array(1, true, "string", [1,2], {x:1,y:2});  //实数组

2、數組直接量

數組直接量的語法格式:在中括號「[]」中包含多個值列表,值之間用逗號分隔。

var a = [];  //空数组
var a = [1, true, "0", [1,0], {x:1,y:0}];  //包含具体元素的数组

存取數組

數組是複合型數據,數組名稱是指向數組的引用型變量,因此數組屬於引用型對象。

存取陣列就是存取陣列元素。元素相當於變量,數組的元素是一組有序排列的變量,它們沒有標識符,以下標進行索引,下標從 0 開始,有序遞增。請注意,陣列下標是非負整數型,或是字元型數字,不可以為其他類型的值或表達式。

使用中括號[]可以讀寫陣列。中括號左側是陣列名稱,中括號內為陣列下標。

数组[下标表达式]

下標表達式是值為非負整數的表達式。

範例1

下面程式碼使用中括號為數組寫入數據,然後再讀取數組元素的值。

var a = [];  //声明一个空数组
a[0] = 0;  //为第一个元素赋值为0
a[2] = 2;  //为第三个元素赋值为2
console.log(a[0]);  //读取第一个元素,返回值为0
console.log(a[1]);  //读取第二个元素,返回值为undefined
console.log(a[2]);  //读取第三个元素,返回值为2

在上面程式碼中僅為 0 和 2 下標位置的元素賦值,下標為 1 的元素為空,讀取時為空的元素回傳值預設為 undefined。

範例2

下面程式碼使用 for 語句批次為陣列賦值,其中陣列下標是一個遞增表達式。

var a = new Array();
for (var i = 0; i < 10; i ++) {
    a[i ++] = ++ i;
}
console.log(a);

範例3

設計有兩個變量,不需要其他變數的幫助實現值互換。

一般情況下實作變數交換,需要定義一個臨時變數做中轉。

var a = 10, b = 20;  //变量初始化
var temp = a;  //定义临时变量存储a
a = b;  //把b的值赋值给a
b = temp;  //把临时变量的值赋值给b

利用陣列就可以這樣設計。

var a = 10, b = 20;  //变量初始化
a = [b, b = a][0];  //通过数组快速交换数据

設計技巧

陣列的元素允許使用表達式,表達式的值與元素的值是兩個不同的概念,本質上元素也是一個變量,標識符是下標編號。在一個匿名數組中,將變數b 的值傳遞給第1 個元素,然後在第2 個元素中以賦值表達式運算的方式把變數a 的值賦值給變數b,再把變數b 的值傳遞給第2 個元素。這個過程是按順序執行的,變數b 的值被重寫,同時數組也被添加了兩個元素,最後使用中括號語法讀取第1 個元素的值,並賦值給變數a,從而實現值互換。

【相關推薦:javascript學習教學

以上是Javascript中什麼是數組的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
React中的鑰匙:深入研究性能優化技術React中的鑰匙:深入研究性能優化技術May 01, 2025 am 12:25 AM

KeysinreactarecrucialforopTimizingPerformanceByingIneFefitedListupDates.1)useKeyStoIndentifyAndTrackListelements.2)避免使用ArrayIndi​​cesasKeystopreventperformansissues.3)ChooSestableIdentifierslikeIdentifierSlikeItem.idtomaintainAinainCommaintOnconMaintOmentStateAteanDimpperperFermerfermperfermerformperfermerformfermerformfermerformfermerment.ChosestopReventPerformissues.3)

反應中的鍵是什麼?反應中的鍵是什麼?May 01, 2025 am 12:25 AM

ReactKeySareUniqueIdentifiers usedwhenrenderingListstoimprovereConciliation效率。 1)heelPreactrackChangesInListItems,2)使用StableanDuniqueIdentifiersLikeItifiersLikeItemidSisRecumended,3)避免使用ArrayIndi​​cesaskeyindicesaskeystopreventopReventOpReventSissUseSuseSuseWithReRefers和4)

反應中獨特鍵的重要性:避免常見的陷阱反應中獨特鍵的重要性:避免常見的陷阱May 01, 2025 am 12:19 AM

獨特的keysarecrucialinreactforoptimizingRendering和MaintainingComponentStateTegrity.1)useanaturalAlaluniqueIdentifierFromyourDataiFabable.2)ifnonaturalalientedifierexistsistsists,generateauniqueKeyniqueKeyKeyLiquekeyperaliqeyAliqueLiqueAlighatiSaliqueLiberaryLlikikeuuId.3)deversearrayIndi​​ceSaskeyseSecialIndiceSeasseAsialIndiceAseAsialIndiceAsiall

將索引用作react中的鍵將索引用作react中的鍵May 01, 2025 am 12:17 AM

使用索引作為鍵在React中是可以接受的,但僅限於列表項順序不變且不會動態添加或刪除的情況;否則,應使用穩定且唯一的標識符作為鍵。 1)在靜態列表(如下拉菜單選項)中使用索引作為鍵是可以的。 2)如果列表項可以重新排序、添加或刪除,使用索引會導致狀態丟失和意外行為。 3)始終使用數據的唯一ID或生成的標識符(如UUID)作為鍵,以確保React正確更新DOM和維護組件狀態。

React的JSX語法:對UI設計的開發人員友好方法React的JSX語法:對UI設計的開發人員友好方法May 01, 2025 am 12:13 AM

jsxisspecialbecialbecapeitblendshtmlwithjavascript,enableComponent-lase-uidesign.1)itallowsembeddingjavascriptInhtml-likesyntax,EnhancinguidesignAndLogicIntegration.2)

使用HTML5可以播放哪種類型的音頻文件?使用HTML5可以播放哪種類型的音頻文件?Apr 30, 2025 pm 02:59 PM

本文討論了HTML5音頻格式和跨瀏覽器兼容性。它涵蓋MP3,WAV,OGG,AAC和WebM,並建議使用多個來源和後備以實現更廣泛的可訪問性。

SVG和Canvas HTML5元素之間的區別?SVG和Canvas HTML5元素之間的區別?Apr 30, 2025 pm 02:58 PM

SVG和畫布是Web圖形的HTML5元素。基於向量的SVG擅長可擴展性和交互性,而基於像素的畫布則更適合遊戲等性能密集型應用程序。

使用HTML5可能會拖放嗎?使用HTML5可能會拖放嗎?Apr 30, 2025 pm 02:57 PM

HTML5可以通過特定的事件和屬性進行拖放,從而允許自定義,但面臨舊版本和移動設備上的瀏覽器兼容性問題。

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

SublimeText3 Linux新版

SublimeText3 Linux新版

SublimeText3 Linux最新版

WebStorm Mac版

WebStorm Mac版

好用的JavaScript開發工具

Dreamweaver Mac版

Dreamweaver Mac版

視覺化網頁開發工具

SublimeText3 英文版

SublimeText3 英文版

推薦:為Win版本,支援程式碼提示!

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境