主要內(nèi)容:
學(xué)習(xí)目標(biāo):
| 節(jié)數(shù) | 知識點(diǎn) | 要求 |
|---|---|---|
| 第一節(jié)(數(shù)組的概念) | 數(shù)組介紹 | 了解 |
| 第二節(jié)(數(shù)組的特點(diǎn)) | length屬性 | 了解 |
| 字符索引 | 了解 | |
| 獲取指定位置的字符 | 了解 | |
| 字符串連接 | 了解 | |
| 第三節(jié)(數(shù)組調(diào)用) | 常見轉(zhuǎn)義字符 | 掌握 |
| 第四節(jié)(數(shù)組的方法) | 創(chuàng)建字符串對象 | 掌握 |
| 第五節(jié)(二維數(shù)組) | 字符串方法 | 掌握 |
| 第六節(jié)(數(shù)組的實(shí)例) | 字符串的使用 | 掌握 |
為什么使用數(shù)組?
問題引入
王大爺有6只烏龜,它們的體重分別是3kg,5kg,1kg,
3.4kg,2kg,50kg 。請問這六只烏龜?shù)目傮w重是少?
平均體重是多少?
不使用數(shù)組:
使用數(shù)組:
一、數(shù)組的概念
1.1什么是數(shù)組
數(shù)組就是按照一定的順序排列的一組值,每個值都有自己的編號,編號(下標(biāo))從0開始,整個數(shù)組用可以用[]表示。
1.2數(shù)組的定義
定義數(shù)組的方式:
方式1:中括號[]
arr = [數(shù)組的值1,數(shù)組的值2,數(shù)組的值3,....];
方式2:使用new Array()
本質(zhì)上,數(shù)組是對象類型的一種特殊表現(xiàn)形式。因此創(chuàng)建的時候我們可以使用new方式來創(chuàng)建。
typeof運(yùn)算符會返回?cái)?shù)組的類型是object。
arr = new Array(數(shù)組的值1,數(shù)組的值2,數(shù)組的值3,....);
1.3數(shù)組的訪問
數(shù)組的下標(biāo)是從0開始,
arr[0]:第一個數(shù)組元素
arr[1]:第二個數(shù)組元素
arr[2]:第三個數(shù)組元素
1.4數(shù)組的操作
可以是不同的數(shù)據(jù)類型
添加,修改,刪除,查看操作
1.5數(shù)組的分類
按維度分:分一維數(shù)組,二維數(shù)組等。
按類型分:索引數(shù)組和關(guān)聯(lián)數(shù)組。
索引數(shù)組:下標(biāo)是阿拉伯?dāng)?shù)字的(0,1,2等)
關(guān)聯(lián)數(shù)組:下標(biāo)是一個字符串
二、數(shù)組的特點(diǎn)
數(shù)組就是一組數(shù)據(jù)(數(shù)字,字符串,對象)類型的集合,簡單來說數(shù)組就是一種容器
\1. 數(shù)組內(nèi)的數(shù)據(jù)可以是任意的類型
\2. 數(shù)組下標(biāo)從0開始
\3. 數(shù)組的長度就是數(shù)組元素的個數(shù)(length)
\4. 數(shù)組下標(biāo)的范圍是0-length-1
三、數(shù)組的使用(重點(diǎn))
3.1數(shù)組的地址傳遞
3.1.1 值傳遞
普通變量是值傳遞,其中的一個改變不會影響到另外一個值。因?yàn)楦髯远加凶约旱牡刂贰?/strong>
3.1.2 地址傳遞
數(shù)組是地址傳遞:其中的一個改變,會影響另一個的改變。因?yàn)樗麄児灿靡粋€地址。
[]:相當(dāng)于(new Array)開辟了一個內(nèi)存空間
八哥總結(jié)說明:
一般的數(shù)據(jù)類型:數(shù)字,字符串,布爾是值傳遞。
數(shù)組和對象一般是地址傳遞。
四、數(shù)組的方法(重點(diǎn))
4.1 數(shù)組的屬性
4.1.1 length的使用
length:數(shù)組的長度
length是一個可寫屬性。
? 如果設(shè)置length長度小于數(shù)組本身長度,那么多余元素舍棄。
? 如果設(shè)置length長度大于數(shù)組本身長度,那么缺少元素用空位補(bǔ)齊。
? 如果設(shè)置length長度不是合法數(shù)值,那么會報錯Invalid array length
4.1.2 數(shù)組的空位
當(dāng)數(shù)組的某個位置是空元素,即兩個逗號之間沒有任何值,我們稱該數(shù)組存在空位(hole)。
var countryNameArr = ['China','','Japan'];
countryNameArr.length//3
4.2 數(shù)組的方法
1.concat(arr1,arr2,....):連接多個數(shù)組
2.push()
3.pop()
4.shift()
5.unshift()
6.join():給數(shù)組添加一個分隔符并將數(shù)組轉(zhuǎn)化為字符串
\7. reverse():倒敘輸出數(shù)組元素
\8. slice(start,end):數(shù)組的截取
9.splice():添加修改刪除數(shù)組元素
10.sort():數(shù)組的排序
按照字符(a-z)的順序排序
\11. map():循環(huán)遍歷數(shù)組,有返回值
循環(huán)遍歷數(shù)組,沒有返回值
forEach(function(val,index,arr){
})
val:數(shù)組元素的值
index:下標(biāo)
arr:數(shù)組本身
13.filter():找到符合條件的所有元素
14.find():找到符合條件的第一個元素
15.findIndex():找到符合條件的第一個元素的下標(biāo)
16.some():只要有一個符合條件的就返回true
17.every():只要有一個不符合條件的就返回false
18.includes():判斷是否包含指定的數(shù)組元素,有就是true,沒有就是false
19.reduce():數(shù)組元素的計(jì)算(從左到右)
20.reduceRight():數(shù)組元素的計(jì)算(從右到左)
22.lastIndexOf():返回指定數(shù)組元素的最后一次出現(xiàn)的下標(biāo)