淺談JavaScript數(shù)組簡(jiǎn)介
數(shù)組簡(jiǎn)介
數(shù)組(Array
) - 數(shù)組也是一個(gè)對(duì)象
它和我們普通對(duì)象功能類(lèi)似,也是用來(lái)儲(chǔ)存一些值的
不同的是普通對(duì)象是使用字符串作為屬性值的,而數(shù)組時(shí)使用數(shù)字來(lái)作為索引操作元素。
索引:從0開(kāi)始的整數(shù)
數(shù)組的儲(chǔ)存性能比普通對(duì)象要好,在開(kāi)發(fā)中我們經(jīng)常使用數(shù)組來(lái)儲(chǔ)存一些數(shù)據(jù)
創(chuàng)建數(shù)組:
var arr = new Array();
使用 typeof檢查一個(gè)數(shù)組時(shí),會(huì)返回 object
向數(shù)組中添加元素
語(yǔ)法: 數(shù)組[索引] = 值
讀取數(shù)組中的元素
語(yǔ)法: 數(shù)組[索引]
如果讀取不存在的索引,它也不會(huì)報(bào)錯(cuò)而是返回 undefined
獲取數(shù)組的長(zhǎng)度
可以使用 length
屬性來(lái)獲取數(shù)組的長(zhǎng)度(元素的個(gè)數(shù))
語(yǔ)法: 數(shù)組.length
對(duì)于連續(xù)的數(shù)組,使用 length
可以獲取到數(shù)組的長(zhǎng)度(元素的個(gè)數(shù))
對(duì)于非連續(xù)的數(shù)組,使用 length
會(huì)獲取到數(shù)組的最大的索引+1
盡量不要?jiǎng)?chuàng)建非連續(xù)的數(shù)組。
修改 length
如果修改的 length小于原長(zhǎng)度,則多出來(lái)部分會(huì)空出來(lái)
如果修改的 length小于原長(zhǎng)度,則多出的元素會(huì)被刪除
向數(shù)組最后一個(gè)位置添加元素
語(yǔ)法: 數(shù)組[數(shù)組.length] = 值
arr[arr.length] = 70; arr[arr.length] = 80; arr[arr.length] = 90;
數(shù)組字面量
使用數(shù)組字面量創(chuàng)建數(shù)組
語(yǔ)法:[]
var arr = [] ;
使用字面量創(chuàng)建數(shù)組時(shí),可以在創(chuàng)建時(shí)就指定數(shù)組中的元素
var arr = [1,2,3,4,5];
使用構(gòu)建函數(shù)創(chuàng)建數(shù)組時(shí),也可以同時(shí)添加元素,將要添加的元素作為構(gòu)建函數(shù)的參數(shù)傳遞,元素之間使用,隔開(kāi)
var arr = new Array(1,2,3,4,5);
注意:
用[]創(chuàng)建一個(gè)數(shù)組數(shù)組中一個(gè)元素10
var arr = [10];
使用構(gòu)建函數(shù)創(chuàng)建數(shù)組一個(gè)參數(shù)時(shí),是創(chuàng)建一個(gè)長(zhǎng)度為10的空數(shù)組;
var arr = new Array(10); console.log(arr); console.log("arr.length="+arr.length);
數(shù)組中可以是任意的數(shù)據(jù)類(lèi)型
var arr = ["孫悟空", 1, true, null, undefined]; console.log(arr);
可以是對(duì)象
var arr = [{name:"孫悟空"}, {name:"豬八戒"}, {name:"沙悟凈"}]; console.log(arr[0].name);
可以是函數(shù)
var arr = [ function () { alert(1) }, function () { alert(2) }];
通過(guò)arr[0]()
調(diào)動(dòng)函數(shù)
二維數(shù)組
創(chuàng)建:
使用[]
var arr = [[1,2,3],[4,5,6],[7,8,9]]; //3行3列的二維數(shù)組
使用new Array
var a = new Array( new Array(10,20,30), new Array(11,22,33), new Array(45,56,67) )
元素的訪問(wèn) 數(shù)組名[行下標(biāo)][列下標(biāo)]
(1)二維數(shù)組的轉(zhuǎn)置:
var a = [ ['a','b','c'], ['d','e','f'], ['g','h','i'], ['i','k','I'] ] var str = '' for(var i=0;i<a.length;i++){ for(var j=0;j<a[i].length;j++){ str += a[i][j]+'\t'; } str += '\n'; } console.log("轉(zhuǎn)置前:\n",str); var res = [] for(var i=0;i<a[0].length;i++){ res[i] = [] for(var j=0;j<a.length;j++){ res[i][j] = a[j][i]; } } console.log("轉(zhuǎn)置后:",res);
(2)定義一個(gè)二維數(shù)組,輸出這個(gè)數(shù)組的每行元素的最大值
var str = '' for(var i=0;i<a.length;i++){ //外循環(huán):a.length表示二維數(shù)組的行數(shù) for(var j=0;j<a[i].length;j++){ //內(nèi)循環(huán):a[i].length表示i行的元素個(gè)數(shù)(列數(shù)) str += a[i][j]+'\t' } str += '\n'; //在每行的末尾添加換行符 } console.log(str); for(var i=0;i<a.length;i++){ var max = a[i][0] for(var j=1;j<a[i].length;j++){ if(max<a[i][j]){ max = a[i][j]; } } console.log("第"+(i+1)+"行的最大值是:"+max) }
總結(jié)
本篇文章就到這里了,希望能夠給你帶來(lái)幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!
相關(guān)文章
JavaScript 入門(mén)·JavaScript 具有全范圍的運(yùn)算符
JavaScript 入門(mén)·JavaScript 具有全范圍的運(yùn)算符...2007-10-10基于JavaScript實(shí)現(xiàn) 獲取鼠標(biāo)點(diǎn)擊位置坐標(biāo)的方法
本篇文章,小編將為大家介紹基于JavaScript實(shí)現(xiàn) 獲取鼠標(biāo)點(diǎn)擊位置坐標(biāo)的方法。有需要的朋友可以參考一下2013-04-04深入理解javaScript中的事件驅(qū)動(dòng)
本篇文章是對(duì)javaScript中的事件驅(qū)動(dòng)進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-05-05JavaScript展開(kāi)操作符(Spread operator)詳解
在本篇文章里小編給大家整理的是關(guān)于JavaScript展開(kāi)操作符(Spread operator)的詳細(xì)介紹以及用法,需要的讀者們參考下。2019-07-07在JavaScript中處理數(shù)組之reverse()方法的使用
這篇文章主要介紹了在JavaScript中處理數(shù)組之reverse()方法的使用,是JS入門(mén)學(xué)習(xí)中的基礎(chǔ)知識(shí),需要的朋友可以參考下2015-06-06javascript 全等號(hào)運(yùn)算符使用說(shuō)明
看到這樣一行代碼 if(typeof item === "string" ) ,看見(jiàn)有3個(gè)等號(hào)以前從沒(méi)這么寫(xiě)過(guò),可能是我的JS技術(shù)還處于初級(jí)的原因吧,我去網(wǎng)上查了一些資料網(wǎng)上說(shuō)這是全等于符號(hào)2010-05-05JavaScript中instanceof運(yùn)算符的使用示例
這篇文章主要介紹了JavaScript中instanceof運(yùn)算符的使用示例,instanceof的使用是JavaScript入門(mén)學(xué)習(xí)中的基礎(chǔ)知識(shí),需要的朋友可以參考下2016-06-06JavaScript 學(xué)習(xí)筆記(十六) js事件
事件對(duì)象里包含三個(gè)方面的信息····回看上一篇內(nèi)容!事件對(duì)象里的屬性和方法,主要是鼠標(biāo)和鍵盤(pán)的信息。2010-02-02script標(biāo)簽的 charset 屬性使用說(shuō)明
如果外部文件中的字符編碼與主文件中的編碼方式不同,就要用到 charset 屬性。2010-12-12