數(shù)組
創(chuàng)建數(shù)組的方式
var a = newArray() 構(gòu)建函數(shù)
var a = [] 字面量操作數(shù)組的方法
delete arr[x] x為index序號(hào)
.push 在數(shù)組的最后一位添加元素
arr.push(100)
arr.pop() 輸出最后一位元素
arr.shift() 去掉數(shù)組的第一位元素
arr.unshift(1) 把參數(shù)加入數(shù)組的第一位
.splice(a,b,c) a想要截取的序號(hào),截止序號(hào)蚓土,替換的內(nèi)容 添加是0 刪除是1
.sort 排序 按ascii碼排序 例如3 > 256 32 > 325
.reverse 反序
instanceof 用來(lái)判斷對(duì)象是否是某個(gè)特定類的實(shí)例
var a = new Array()
a instanceof Arry
true
var a1 = [1,2,3,]; //當(dāng)數(shù)組的最后一位為","的時(shí)候 該數(shù)組的長(zhǎng)度也為3
a1.length = 3 //但要注意在不同的瀏覽器下對(duì)此的處理方式不一樣,因此數(shù)組內(nèi)盡量不要以,結(jié)尾
通過(guò)數(shù)組的下標(biāo)訪問(wèn)數(shù)組
< 3
>var i = 1
>a1[i]
< 2
>a1[++i]
< 3
>a1[i++]
< 2```
#遍歷一個(gè)數(shù)組
```>var arr = [2,4,1,5,7]```
```>for(var i = 0;i < arr.length; i++){
console.arr[i]; // 由于i < 且不等于arr.length 因此默認(rèn)i的最大值只會(huì)是arr.length-1
}
數(shù)組的基本操作
直接操作
>a[3] = 4
> a
<[2,4,1,4,7]
>delete arr[0]
> a
<[undefined x 1,4,1,4,7]
push方法 在數(shù)組的最后一位添加元素(堆棧)
>var arr = [2,4,6,8,10]
>arr.push(12)
< arr
>[[2,4,5,8,10,12]
pop方法 刪除數(shù)組的最后一位元素,并將其返回(堆棧)
>arr
<[2, 4, 6, 8, 10, 12]
>arr.pop() //跟python中的pop不一樣,js的pop不帶參數(shù),只能刪除最末一位
<12
>arr
<[2, 4, 6, 8, 10]
shift方法 刪除數(shù)組的第一位元素,并將其返回(隊(duì)列)
>var arr = [2, 4, 6, 8, 10]
>arr.shift()
<2
>arr
<[4, 6, 8, 10]
unshift方法 在數(shù)組的第一位添加元素(隊(duì)列)
>var arr = [2, 4, 6, 8, 10]
>arr.unshift(0)
<6
>arr
<[0, 2, 4, 6, 8, 10]
splice方法 任意進(jìn)行數(shù)組的添加和刪除
splice方法有3個(gè)參數(shù) splice(開始索引, 刪除元素的位移, 插入的新元素(可多個(gè)))
#刪除多個(gè)元素
>var arr = [0,2,4,6,8,10]
>arr.splice(1,4)
<[2, 4, 6, 8]
>arr
<[0, 10]
#插入元素(將第二個(gè)參數(shù)設(shè)為0,意即不刪除)
>var arr = [0,2,4,6,8,10]
>arr.splice(2,0,2.5,3,3.5)
>[]
>arr
<[0, 2, 2.5, 3, 3.5, 4, 6, 8, 10] //理解插入的含義
join方法,使用指定參數(shù)把數(shù)組里的元素拼接,并輸出字符串
slice方法 從數(shù)組里拷貝出一段元素,不會(huì)改變被拷貝數(shù)組的值 slice(開始序號(hào),結(jié)束序號(hào)(截取不包括結(jié)束序號(hào))
>var arr = [1,2,3,4,5,6,7,8,9,0]
>arr.slice(3,9)
<[4, 5, 6, 7, 8, 9]
>arr
<[1, 2, 3, 4, 5, 6, 7, 8, 9, 0]
concat方法,將一個(gè)或多個(gè)數(shù)組拼接成一個(gè)新的數(shù)組并返回
>var alpha = ["a", "b", "c"];
>var numeric = [1, 2, 3];
// 組成新數(shù)組 ["a", "b", "c", 1, 2, 3]; 原數(shù)組 alpha 和 numeric 未被修改
>var alphaNumeric = alpha.concat(numeric);
reverse方法,將一個(gè)數(shù)組逆序并改變?cè)瓟?shù)組
>var arr = [1,2,3,4,5,6,7,8,9,0]
>arr.reverse()
<[0, 9, 8, 7, 6, 5, 4, 3, 2, 1]
>arr
<[0, 9, 8, 7, 6, 5, 4, 3, 2, 1]
sort方法 將一個(gè)數(shù)組進(jìn)行排序并改變?cè)瓟?shù)組(排序是按照字符串的順序)
字符串的操作
substr(起始序號(hào), 長(zhǎng)度)方法 返回字符串中從指定位置開始的指定長(zhǎng)度的字符
>var str = "abcdefghij";
>str.substr(1,2)
< bc
substring方法 返回字符串兩個(gè)索引之間(或到字符串末尾)的子串革半。
>var anyString = "Mozilla";
>console.log(anyString.substring(0,3))
<moz
>console.log(anyString.substring(0,7))
< Mozilla
search方法