亚洲 国产精品 日韩-亚洲 激情-亚洲 欧美 91-亚洲 欧美 成人日韩-青青青草视频在线观看-青青青草影院

千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機構(gòu)

手機站
千鋒教育

千鋒學習站 | 隨時隨地免費學

千鋒教育

掃一掃進入千鋒手機站

領(lǐng)取全套視頻
千鋒教育

關(guān)注千鋒學習站小程序
隨時隨地免費學習課程

當前位置:首頁  >  技術(shù)干貨  > Javascript中的內(nèi)置對象—數(shù)組

Javascript中的內(nèi)置對象—數(shù)組

來源:千鋒教育
發(fā)布人:wjy
時間: 2022-06-01 16:21:00 1654071660

大家好,有關(guān)js中的數(shù)組,很多小伙伴可能都會有疑問,尤其是面試的過程中有大量有關(guān)于原生數(shù)組的題,以及數(shù)組中的方法,及方法的返回值、是否會修改原數(shù)組等等。

想要徹底解決這些問題,就要系統(tǒng)的解析數(shù)組的方法,那么我們今天就來深度解析一下這個問題哈。

## **什么是數(shù)組?**

> 數(shù)組:存儲一組或一系列相關(guān)數(shù)據(jù)的窗口,相當于多個變量的組合。(小區(qū))

- 當有多個數(shù)據(jù)進行存儲和處理時使用數(shù)組,如果存儲5個、50個數(shù)據(jù)呢?
- 數(shù)組是在內(nèi)存中連續(xù)開辟的空間,相比變量,對于存儲或讀取數(shù)據(jù)的性能更高、更快。

> 數(shù)組下標:能夠標識唯一一個數(shù)組空間的索引號。(相當于房間的門牌號)
> 下標從0開始,最大下標:數(shù)組的長度- 1
> 數(shù)組的元素:存儲在數(shù)組中具有唯一索引號中的數(shù)據(jù),叫元素。

Javascript中的內(nèi)置對象—數(shù)組

## **如何聲明數(shù)組?**

1. 字面量方式:[]
2. 構(gòu)造函數(shù)方式:new Array()

```text
var arr = []; //聲明一個空數(shù)組
var list = new Array(); //聲明一個空數(shù)組
```

## **兩種聲明方式的區(qū)別?**

1. 字面量方式,無論存儲什么數(shù)據(jù),都表示數(shù)組元素。
2. 構(gòu)造函數(shù)中有且僅有一個正整數(shù)時,表示數(shù)組長度。
3. 構(gòu)造函數(shù)中有一個負整數(shù)或小數(shù)時,直接報錯
4. 構(gòu)造函數(shù)中有一個或多個其它類型數(shù)據(jù)時,表示數(shù)組元素。

```text
var arr = [5]; // 表示數(shù)組中有一個元素是5,長度是1
var arr = new Array(5); //表示這個數(shù)組的長度為5,可以存放5個元素。默認元素為undefined,undefined,undefined,undefined,undefined
var arr = new Array(-5); //長度不能為負數(shù),程序報錯
var arr = new Array(5.3); //長度不能為小數(shù),程序報錯
var arr = new Array('3'); //表示數(shù)組中有一個元素是'3',長度是1
var arr = new Array(1,2,3,4,5);//表示數(shù)組中有5個元素,分別是1 2 3 4 5 ,長度是5
```

## **如何訪問數(shù)組?**

> 數(shù)組名[下標]

```text
var arr = [1,2,3,4,5]; //聲明一個數(shù)組,存放了5個元素
arr[5] = 6; //為數(shù)組新增了一個元素6,下標為5
console.log(arr[0]); //訪問數(shù)組中0下標對應的元素是1
```

## **數(shù)組的屬性**

> length : 表示數(shù)組的長度(即數(shù)組中有多少個內(nèi)存空間)

```text
var arr = [1,2,3,4];
console.log(arr.length); // 4 表示數(shù)組的長度
```

## **數(shù)組的方法(增、刪、改、截、拼、復、排、轉(zhuǎn))**

**增:**

> unshift(元素,元素,元素,……)

- 作用:在數(shù)組的首部添加新元素。
- 返回值:新增后數(shù)組的長度
- 是否影響原數(shù)組:是

```text
var arr = [5,6,7,8,9]; //聲明一個數(shù)組
console.log(arr.unshift(true,[1,2,3],false)); //unshift方法的返回值,8 表示新增后這個數(shù)組的長度是8
console.log(arr); // 輸出原數(shù)組 [true,[1,2,3],false,5,6,7,8,9]
```

> push(元素,元素,元素,……)

- 作用:在數(shù)組的尾部添加新元素。
- 返回值:新增后數(shù)組的長度
- 是否影響原數(shù)組:是

```text
var arr = [5,6,7,8,9];
console.log(arr.push(true,[1,2,3],false)); //push方法的返回值,8 表示新增后這個數(shù)組的長度是8
console.log(arr); // 輸出原數(shù)組 [5, 6, 7, 8, 9, true, [1,2,3], false]
```

**刪:**

> shift()

- 作用:刪除數(shù)組首部的一個元素( 一次只能刪除一個)
- 返回值:被刪除的元素
- 是否影響原數(shù)組:是

```text
var arr = [5,6,7,8,9];
console.log(arr.shift()); //shift方法的返回值,5 表示在數(shù)組中刪除的元素5
console.log(arr); // 輸出原數(shù)組 [6, 7, 8, 9]
//刪除全部元素
var arr = [5,6,0,8,9];
while(arr.length){
    arr.shift();
}
console.log(arr);
```

> pop()

- 作用:刪除數(shù)組尾部的一個元素( 一次只能刪除一個)
- 返回值:被刪除的元素
- 是否影響原數(shù)組:是

```text
var arr = [5,6,7,8,9];
console.log(arr.pop()); //9 pop方法的返回值,9 表示在數(shù)組中刪除的元素9
console.log(arr); // 輸出原數(shù)組 [5, 6, 7, 8]
```

**改:**

> splice(start,del_length,元素,元素,……)

- start : 從哪個下標位置開始
- del_length : 刪除幾個元素
- 元素 :新增的元素
- 作用:在數(shù)組的任意位置可以增、刪、改的操作。
- 返回值:被刪除的元素數(shù)組
- 是否影響原數(shù)組:是

```text
var arr = [5,6,7,8,9];
//只有一個參數(shù)時,表示從指定的下標開始刪除到數(shù)組末尾
console.log(arr.splice(1)); // [6, 7, 8, 9] 返回值
console.log(arr); // [5] 原數(shù)組

var arr1 = [5,6,7,8,9];
//兩個參數(shù)時,表示從指定的下標位置開始刪除指定長度的元素
console.log(arr1.splice(1,2)); // [6, 7]
console.log(arr1); // [5, 8, 9]

var arr2 = [5,6,7,8,9];
//在刪除的位置新增元素。從下標1開始刪除2個元素,并在下標1的位置新增true,false兩個元素
console.log(arr2.splice(1,2,true,false)); // [6, 7]
console.log(arr2); // [5, true, false, 8, 9]

var arr3 = [5,6,7,8,9];
//在下標1的位置,刪除0個元素,并在下標1的位置新增兩個元素true,false
console.log(arr3.splice(1,0,true,false)); // []
console.log(arr3); // [5, true, false, 6, 7, 8, 9]
```

**截:**

> slice(start,end)

- start : 從哪個下標位置開始
- end : 到哪個下標位置結(jié)束(不包含結(jié)束位置)
- 作用:截取數(shù)組中指定范圍的元素
- 返回值:被截取到的元素數(shù)組
- 是否影響原數(shù)組:否

```text
var arr = [5,6,7,8,9];
// 從原數(shù)組中的下標1位置開始截取到數(shù)組末尾,并返回截取到的新數(shù)組
console.log(arr.slice(1)); // [6, 7, 8, 9] 返回值
console.log(arr); // [5,6,7,8,9] 原數(shù)組

var arr1 = [5,6,7,8,9];
//從原數(shù)組中的下標1位置開始截取到3下標之前(不包含3下標)
console.log(arr1.slice(1,3)); // [6, 7] 返回值
console.log(arr1); // [5,6,7,8,9] 原數(shù)組

var arr2 = [5,6,7,8,9];
//從原數(shù)組中的下標3位置開始截取到1下標之前(因為只能向右截取,所有未能截取到元素)
console.log(arr2.slice(3,1)); // [] 返回值
console.log(arr2); // [5,6,7,8,9] 原數(shù)組

var arr3 = [5,6,7,8,9];
//從原數(shù)組中的下標-3(最后一個元素下標為-1,-3下標對應的元素為7)位置開始截取到-1下標之前(不包含-1下標)
console.log(arr3.slice(-3,-1)); // [7, 8] 返回值
console.log(arr3); // [5,6,7,8,9] 原數(shù)組
```

**拼:**

> concat(元素,元素,……)

- 作用:在指定的數(shù)組后面拼接新的元素(如果新元素是數(shù)組,則去掉最外層的[]將里面元素拼接)
- 返回值:拼接后的新數(shù)組
- 是否影響原數(shù)組:否

```text
var arr = [5,6,7,8,9];
//拼接的元素如果是多維數(shù)組,則取最外層數(shù)組中的元素原樣拼接到指定數(shù)組的后面
console.log(arr.concat(1,[true,[1,2]],3)); // [5, 6, 7, 8, 9, 1, true, [1,2], 3] 返回值
console.log(arr); // [5,6,7,8,9] 原數(shù)組
```

**復:**

```text
function copyArray(arr){
    return arr.slice(0);
}
function cloneArray(arr){
    return arr.concat();
}
```

**排:**

> reverse()

- 作用:將數(shù)組中的元素逆序存放
- 返回值:返回逆序后的數(shù)組
- 是否影響原數(shù)組:是

```text
var arr = [3,2,10,4,5];
console.log(arr.reverse()); // [5, 4, 10, 2, 3] 返回值
console.log(arr); // [5, 4, 10, 2, 3] 原數(shù)組
```

> sort()

- 作用:將數(shù)組中的元素按照字符編碼進行從小到大排序
- 返回值:返回逆序后的數(shù)組
- 是否影響原數(shù)組:是

```text
var arr = [3,2,10,4,5];
//以字符串的方式比較-排序:10 與 2 比較 1 < 2,所以10 < 2
console.log(arr.sort()); // [10, 2, 3, 4, 5] 返回值
console.log(arr); // [10, 2, 3, 4, 5] 原數(shù)組
```

> sort(function(a,b){return a-b;}) : 將數(shù)組中的元素按照數(shù)字進行從小到大排序。sort(function(a,b){return b-a;}) : 將數(shù)組中的元素按照數(shù)字進行從大到小排序。

```text
var arr = [3,2,10,4,5];
// 按數(shù)字 從小到大
console.log(arr.sort(function(a,b){return a-b;})); //[2, 3, 4, 5, 10]
// 按數(shù)字 從大到小
console.log(arr.sort(function(a,b){return b-a;})); //[10, 5, 4, 3, 2]
```

**轉(zhuǎn):**

> join('連接符')

- 作用:將數(shù)組轉(zhuǎn)為以指定連接符連接成的字符串
- 返回值:返回轉(zhuǎn)換后的字符串
- 是否影響原數(shù)組:否

```text
var arr = [1,2,3,4];
// 將數(shù)組轉(zhuǎn)成以空字符串連接成的字符串
console.log(arr.join('')); //'1234'
```

更多關(guān)于“html5培訓”的問題,歡迎咨詢千鋒教育在線名師。千鋒已有十余年的培訓經(jīng)驗,課程大綱更科學更專業(yè),有針對零基礎(chǔ)的就業(yè)班,有針對想提升技術(shù)的提升班,高品質(zhì)課程助理你實現(xiàn)夢想。

tags:
聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
10年以上業(yè)內(nèi)強師集結(jié),手把手帶你蛻變精英
請您保持通訊暢通,專屬學習老師24小時內(nèi)將與您1V1溝通
免費領(lǐng)取
今日已有369人領(lǐng)取成功
劉同學 138****2860 剛剛成功領(lǐng)取
王同學 131****2015 剛剛成功領(lǐng)取
張同學 133****4652 剛剛成功領(lǐng)取
李同學 135****8607 剛剛成功領(lǐng)取
楊同學 132****5667 剛剛成功領(lǐng)取
岳同學 134****6652 剛剛成功領(lǐng)取
梁同學 157****2950 剛剛成功領(lǐng)取
劉同學 189****1015 剛剛成功領(lǐng)取
張同學 155****4678 剛剛成功領(lǐng)取
鄒同學 139****2907 剛剛成功領(lǐng)取
董同學 138****2867 剛剛成功領(lǐng)取
周同學 136****3602 剛剛成功領(lǐng)取
相關(guān)推薦HOT
成人无码H动漫在线网站樱花| JAPAN丰满人妻VIDEOS| FREESEX欧美喷水| 国产成人精品免费久久久久| 黑人性受XXXX黑人XYX性爽| 伦理电线在2019| 人妻中文字幕AV无码专区| 无码精品人妻AV一区二区三区| 亚洲男人综合久久综合天堂| 99国产欧美久久久精品蜜桃| 国产99久9在线 | 传媒| 精品国产乱码久久久久久蜜桃网站 | 成人免费午夜无码视频在线播放| 国产无遮挡裸露视频免费| 美女大BXXXXN内射| 深灬深灬深灬深灬一点| 亚洲熟妇一区二区| 成人免费AⅤ视频一区二区| 果冻传媒剧国产剧在线看| 免费无码黄网站在线观看| 熟妇人妻精品一区二区蜜桃| 亚洲色丰满少妇高潮18P| 锕锕锕锕锕锕锕好痛免费网址| 国产亚洲精品自在久久VR| 年轻漂亮的人妻被公侵犯BD免费版| 特大黑人巨交吊性XXXX| 一面膜上边一面膜下边韩国| 放荡娇妻张开腿任人玩H| 久久精品亚洲精品无码金尊| 日韩少妇激情一区二区| 亚洲熟妇AV一区二区三区下载| 宝宝怎么这么湿~别磨| 精品国产乱码久久久久久浪潮 | ワンピースのエロ官网| 狠狠躁夜夜躁人妻蜜臂AV| 人妻人人做人做人人爱| 亚洲乱码无人区卡1卡2卡3| 成人国内精品视频在线观看| 久久99精品久久久久久久清纯| 日韩亚洲AV人人夜夜澡人人爽| 亚洲综合成人婷婷五月网址| 国产AV成人无码精品网站| 巨熟乳波霸若妻在线播放| 色婷婷一区二区三区四区成人网 | 久无码久无码AV无码| 天美传媒MV在线看免费| 91人妻人人做人碰人人爽蜜闫| 国产精品亚洲综合网熟女| 女人大荫蒂毛茸茸视频| 亚洲AV无码不卡在线观看下载| 按在阳台上疯狂的进入| 久久久久久久精品成人热小说| 玩乡下黄花小处雏女| AV免费网站在线观看| 精品性高朝久久久久久久| 三上悠亚SSⅠN939无码播放| 正在播放东北夫妻内射| 国产亚洲精品第一综合| 日韩AV高清在线观看| 中文字幕免费不卡二区| 狠狠色丁香五月综合婷婷| 手机成人免费A级毛片无码| 99久久99久久久精品齐齐综合 | 人善交VIDE欧美| 中国老熟妇自拍HD发布| 好男人好资源影视在线| 私人微信放款24小时在线| MACBOOKPRO免费网站| 久久婷婷人人澡人人喊人人爽| 亚洲 中文 欧美 日韩 在线| 第一次接20厘米得黑人活| 欧美成人国产精品视频| 亚洲最大AV资源站无码AV网址| 国产人成亚洲综合无码AⅤ蜜桃| 日韩乱码人妻无码中文视频| 97色伦综合在线欧美视频| 久久久久亚洲AV无码专区首JN| 亚洲AⅤ日韩久久久久久| 疯狂做受XXXX欧美老人| 人妻护士在线波多野结衣| 中文字幕久无码免费久久| 久久国产精品日本波多野结衣| 希露薇の繁殖计划游戏| 丰满少妇被猛烈进入无码| 人妻无码AⅤ中文字幕| 777亚洲精品乱码久久久久久| 久久人人爽人人爽人人片AVY | WWW国产无套内射COM| 蜜臀av色欲一区二区三区麻豆| 亚洲熟女WWW一区二区三区| 黑巨人的又黑又大又长| 午夜精品久久久久9999高清| 公的下面好大弄得我好爽| 日韩 无码 偷拍 中文字幕| CSGO白嫖网站| 欧美 丝袜 自拍 制服 另类| 中文日产幕无限码一区有限公司| 久久久久久久精品国产亚洲87| 亚洲精品无码AV天堂| 后Λ式动态后Λ式动态图AV| 亚洲AV人无码激艳猛片| 国产无遮挡18禁无码网站免费| 无码人妻一区二区三区精品视频| 公交车上售票员用B验票小镇| 日本丰满熟妇XXXX色熟妇| 锕锕锕锕锕锕锕轻点好痛免费 | 欧洲精品久久久AV无码电影 | 国产裸体美女永久免费无遮挡| 天天做天天爱天天综合网2021| 国产成人A区在线观看| 天堂资源中文WWW| 国产成人亚洲综合无码18禁禁| 视频二区精品中文字幕| 国产AⅤ精品一区三区| 熟妇女领导呻吟疯狂| 国产SM主人调教女M视频| 熟女CHACHACHA性少妇| 国产成人精品A∨一区二区| 无码AV在线一区二区| 国产裸拍裸体女网站链接在线观看| 无码日韩人妻精品久久| 国产亚洲AV寡妇| 亚洲高清AⅤ日本欧美视频| 精品久久久久香蕉网| 亚洲制服丝袜中文字幕在线| 里番ACG ※里番_ACG工口| 18禁无遮拦无码国产在线播放| 欧美成人精品第一区| 把腿张开老子臊烂你的漫画| 日韩人妻无码精品久久久不卡| 公和熄小婷乱中文字幕| 无码人妻精品一区二区在线视频| 国产偷国产偷亚州清高APP| 亚洲成在人线在线播放无码| 九九精品无码专区免费| 在线中文天堂最新版WWW| 欧美XXXX做受欧美88| 人人人妻人人澡人人爽欧美一区| 亚洲精品无码激情AV| 男生女生差差差轮滑免费| 一本岛V免费不卡一二三区| 公翁的粗大放进我的秘密小说| 亚洲乱码日产精品BD在线看| 国产男男GayGay裸交视频| 无码专区永久免费AV网站| 国产成人无码AV片在线观看不卡| 色8久久人人97超碰香蕉987 | 国内少妇毛片视频| 亚洲精品又粗又大又爽A片| 巨波霸乳在线永久免费视频 | 成人爽A毛片免费网站美国| 无码人妻精品一区二区蜜桃网站| 黑人双人RAPPER剧情介绍| 在线V观看免费国岛国片| 人妻人人做人碰人人添青青| 国产成人AV综合久久| 亚洲激情无码一区| 免费无码午夜福利片| 丰满少妇人妻无码| 亚洲国产成人一区二区三区| 免费观看电视剧全集在线播放| 成人区人妻精品一区二区不卡网站 | 顶级欧美做受XXX000| 亚洲AV无码午夜嘿嘿嘿| 美女扒开腿让男人桶爽| 成人无码网WWW在线观看| 午夜亚洲AⅤ无码高潮片| 久久一日本道色综合久久| 被下春药爽翻天按摩的人妻| 亚洲 欧美 叧类人妖| 乱色精品无码一区二区国产盗| 成人乱子视频在线播放| 亚洲成A人V欧美综合天堂麻豆 | 久久99精品国产麻豆婷婷| 9精产国品一二三产区| 无码国产精品一区二区VR老人| 久久成人麻豆午夜电影| 爸的比老公大两倍儿媳叫什么呢| 午夜亚洲精品久久久久久| 麻豆国内剧情AV在线素人搭讪 | WWW插插插无码免费视频网站| 午夜无码A级毛片免费视频| 蜜桃AV抽搐高潮一区二区| 国产成人A区在线观看| 亚洲最新无码成AV人| 色吊丝AV中文字幕| 色综合伊人色综合网站| 国产亚洲精品在AV| 国产成人亚洲精品无码车A| 亚洲国产欧美在线人成| 女人18毛片A级毛片视频| 国产精品 高清 尿 小便 嘘嘘 | 女人与牛ZOZO| 国产成人无码18禁午夜福利免费 | 久久精品国产亚洲AV无码麻豆 | 久久久久99精品成人片牛牛影视| 粗大在少妇体内进进出出 | 久久久久国色AV∨免费看| 成人做受120视频试看| 亚洲一级 片内射欧美乱强|