Array是Javascript的原生對(duì)象
構(gòu)造函數(shù)
var arr=new Array()
參數(shù)可以是單個(gè)數(shù)字表示產(chǎn)生長(zhǎng)度為幾的數(shù)組,但各個(gè)成員的值都為空,如果是多個(gè)數(shù)字的話,就表示數(shù)組成員;也可以是字符串?dāng)?shù)組等。但如果參數(shù)是空位的話,就會(huì)讀取到undefined,而且讀取不到鍵名
實(shí)例:
創(chuàng)新互聯(lián)建站是一家專業(yè)提供可克達(dá)拉企業(yè)網(wǎng)站建設(shè),專注與網(wǎng)站設(shè)計(jì)、做網(wǎng)站、H5技術(shù)、小程序制作等業(yè)務(wù)。10年已為可克達(dá)拉眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)站設(shè)計(jì)公司優(yōu)惠進(jìn)行中。
var arr = new Array(3);
arr.length // 3
arr // [ empty x 3]
判斷是否為數(shù)組
Array.isArray()返回一個(gè)布爾值,表示是否為數(shù)組,返回值為布爾值
var arr = [1, 2, 3];
Array.isArray(arr) // true
方法
1:valueOf()表示對(duì)該對(duì)象求值,返回?cái)?shù)組本身
var arr = [1, 2, 3];
arr.valueOf() // [1, 2, 3]
2:toString()返回?cái)?shù)組的字符串形式,數(shù)組變字符串
var arr = [1, 2, 3];
arr.toString() // "1,2,3"
3:push()在數(shù)組的末端添加一個(gè)或者多個(gè)元素,并返回添加新元素的數(shù)組長(zhǎng)度,會(huì)改變?cè)瓉?lái)的數(shù)組
var arr = [1,2];
console.log(arr.push(3));//3---返回添加新元素后的數(shù)組長(zhǎng)度
4:pop()刪除數(shù)組的最后一個(gè)元素,并返回該元素,會(huì)改變?cè)瓉?lái)的數(shù)組。對(duì)空數(shù)組使用pop方法,會(huì)返回undefined
var arr = ['a', 'b', 'c'];
console.log(arr.pop()); // 'c'--刪除最后一個(gè)元素,并將其返回
5:shift()用于刪除數(shù)組的第一個(gè)元素,并返回該元素,會(huì)改變?cè)瓉?lái)數(shù)組
Unshift()用于在數(shù)組第一個(gè)位置添加元素,并返回新元素的數(shù)組長(zhǎng)度,該方法會(huì)改變?cè)瓟?shù)組
var a = ['a', 'b', 'c'];
console.log(a.shift()); // 'a'--在第一個(gè)位置刪除元素a
console.log(a );// ['b', 'c']
a.unshift('d'); // 4--添加d元素,并返回?cái)?shù)組長(zhǎng)度4
6:join()將數(shù)組轉(zhuǎn)化為字符串。以指定參數(shù)作為分隔符,將所有數(shù)組成員連接成為一個(gè)字符串返回,如果數(shù)組成員是undefined或null或者空位,會(huì)將轉(zhuǎn)化為空字符串
var a = [1, 2, 3];
console.loga.join(' '));// '1 2 3'
console.loga.join(' | '));// "1 | 2 | 3 "
console.loga.join()); // "1,2,3"
7:concat()數(shù)組合并,將新數(shù)組的成員添加到原數(shù)組成員的后面,但不影響原數(shù)組
var a=[1,2,3];
var b=[4,5,6];
console.log(a.concat(b));//[1,2,3,4,5,6]
8:reverse()用于顛倒數(shù)組元素,返回改變后的數(shù)組,該方法會(huì)改變?cè)瓟?shù)組
var a = ['a', 'b', 'c'];
console.log(a.reverse()); // ["c", "b", "a"]
console.log(a );// ["c", "b", "a"]
9:arr.slice(start,end)返回一個(gè)新數(shù)組,原數(shù)組不變:兩個(gè)參數(shù),第一個(gè)參數(shù)為起始位置,第二個(gè)參數(shù)為終止位置,左開(kāi)右閉[start,end),取小不取大
var a = ['a', 'b', 'c'];
console.log(a.slice(0)) // ["a", "b", "c"]
console.log(a.slice(1, 2)) // ["b"]
10:splice()用于刪除原數(shù)組的一部分成員,并且在刪除的位置添加新的數(shù)組成員,返回值是被刪除的元素,會(huì)改變?cè)瓟?shù)組 如果是刪除的話第一個(gè)參數(shù)是索引起始位置,第二個(gè)參數(shù)是被刪除元素的個(gè)數(shù);插入元素的話可以直接在這兩個(gè)元素后面添加新成員
var a = ['a', 'b', 'c', 'd', 'e', 'f','g'];
a.splice(4, 2) // ["e", "f"]
a//['a', 'b', 'c', 'd','g'];
a.splice(0, 2, 'h', 'i') // ["a", "b"]
a // [ 'c', 'd','g','h', 'i'];--刪除a,b并添加h i
11:sort()對(duì)數(shù)組成員進(jìn)行排序,按照字典順序排序,數(shù)值會(huì)被轉(zhuǎn)化為字符串,然后再進(jìn)項(xiàng)字典順序排序,排序后原數(shù)組
成員將被改變,可以傳入一個(gè)函數(shù)作為參數(shù)
實(shí)例1: console.log([9,7,8,6].sort());//[6,7,8,9]
實(shí)例2:
var b=[3,2,4,1]
b.sort(function (n1,n2){
return n1-n2;
});
console.log(b);//[1,2,3,4]
12:map()將數(shù)組的所有成員依次傳入?yún)?shù),然后將每一次的執(zhí)行結(jié)果組成一個(gè)新數(shù)組返回,接受一個(gè)函數(shù),函數(shù)中傳入三個(gè)參數(shù),當(dāng)前成員 當(dāng)前位置 數(shù)組本身 相當(dāng)于遍歷數(shù)組,映射一個(gè)新數(shù)組
var numbers = [1, 2, 3];
numbers.map(function (n) {
return n + 1;
});// [2, 3, 4]
numbers
// [1, 2, 3]
13:forEach遍歷數(shù)組 element,index,array---當(dāng)前值、當(dāng)前位置、整個(gè)數(shù)組
var a=[1,2,3,4];
a.forEach(function (val, index, arr) {
arr[index]+=val;
})
console.log(a)//[2,4,6,8]
14:filter()用于過(guò)濾數(shù)組成員,滿足條件的成員組成一個(gè)新數(shù)組返回
console.log([1,2,3,4].filter(function (val, index, arr) {
if (val % 2 == 0) {
return val;
}
}));//[2,4]
15:some()返回一個(gè)布爾值,表示判斷數(shù)組成員是否符合某種條件。
var arr = [1, 2, 3, 4, 5];
arr.some(function (elem, index, arr) {
return elem >= 3;
});
// true---如果有一個(gè)大于等于3,就會(huì)返回true
16:reduce()累加//累乘
console.log([1,2,3].reduce(function (totle, current, index) {
return totle *= current;
}));//6
網(wǎng)頁(yè)名稱:JSArray對(duì)象
文章位置:http://jinyejixie.com/article34/ipicse.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站收錄、品牌網(wǎng)站設(shè)計(jì)、虛擬主機(jī)、網(wǎng)站內(nèi)鏈、網(wǎng)站制作、商城網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)