Array
概述
- 一维数组
数组是一个有序的数据鸠合,能够经由过程数组称号和索引举行接见。JavaScript中并没有明白的数组数据类型。建立一维数组具有以下几种体式格局:
var arr = new Array (element 0, element 1,…elementN);
var arr = Array(elechuangiment0,element1,…elementN);
var arr = [elemnt0,element1,…,elementN];
var arr =new Array(arrayLength);
var arr = Array(arrayLength);
- 二维数组
数组是能够嵌套,这就意味着一个数组能够作为一个数组被包括在别的一个数组内里。应用JavaScript这个特性,建立二维数组,即数组的数组。
[01[03],00[02],01[03]]
数组的罕见要领
- 检测数组
怎样肯定当前是一个数组,JavaScript供应以下几种体式格局:
1,typeof没法检测数组对象:typeof[]返回object
2,instanceof:[]instanaceof Arraty返回true/false
3,Object.prototype.toStringcall([]):返回【object Array】
4,Array.prototype.isprototypeOf([]):返回true/false
5,ES5中新要领:Array.isArray([]);返回true/false
- 转换要领
JavaScript供应了以下要领,用于数组的转换:
toString:把数组转换为字符串,并返回效果。
valueO发():返回数组对象的原始值。
var colors =[‘red”blue”green’];
console.log(color.toString());//red ,blue,green
console.log(colors.valueOf());//red,blue,green
- JavaScript供应了以下要领,用于数组的收支栈操纵:
push():向数组末尾增加一个或多个元素,并返回新的长度。
pop():删除数组的末了一个元素并返回删除的元素。
shift():删除并返回数组的第一个元素。
unshift():像数组的开首增加一个或更多元素。并返回新的长度
var colors =[‘red”blue”green’];
var count =color.push(black’);//4
var item = colors.pop()//black
var count=colors.unshift(‘pink’);//4
var item =color.shift();//pink
- 排序要领
JavaScript供应了以下要领,用于数组的排序操纵:
reverse():反转数组的元素递次。
sort()对数组的元素举行排序。
var values = [0,1,2,3,4,5];
console.log(values.sort());// 0 ,1,2,3,4,5
console.log(values.reverse());//5,4,3,2,1
reverse()和sort()要领的返回值是经由排序以后的数组。
- 衔接要领
JavaScript供应了以下要领,用于多个数组之间的衔接操纵:
concat():衔接两个或更多的数组,并返回效果。
var color =[‘red’,’blue’,’green’];
var color2 =colors.concat(‘yellow,'[‘black’,’pink’]);
console.log(colors2);
//red,blue,green,yellow,black,pink
- 操纵要领
JavaScript供应了以下要领,用于数组的删除,插进去和替代操纵:
slice():选区数组的一部分,并返回一个新数组。
splice()从数组中增加或删除元素。
var colors= [‘red’,’blue’,’green’,’yellow’];
var color2 = colors.slice(1);//blue ,green,yellow
var color 3 =colors.cplice(0,1);//red
color.splice(1,0,’orange’);//red orange,blue ,green ,yellow
var remove2= colors.splice(1,1,’purple’);//blue
console.log(colors);//red pirple ,green ,yellow
- 位置要领
JavaScript供应了以下的要领,用于猎取数组中指定元素的所引值:
indexOf():搜刮数组中的元素,并返回它的地点的位置。
lastindexOf()返回一个指定的字符串值末了涌现的位置,在一个字符串中的指定位置从后先前搜刮。
var numbers= [1,2,3,4,5,4,3,2,1];
console.log(number.indexOf(4));//3
console.log(numbers.indexOf(4));//5
迭代与合并要领
- 迭代要领
JavaScript供应了以下要领,用于数组的迭代遍历:
every():推断数组中每个元素是不是都满足fun函数定义的前提。只需都满足才返回true。不然返回false。
fliter():特地用于筛选出数组中相符fun函数推断前提的元素构成的新数组。
forEach():特地用于对原数组中每个元素实行雷同的fun函数对象归划定的操纵。
map():特地用于基于原数组建立新数组对象。
some():推断数组中是不是包括满足fun函数定义的前提元素。只需包括就返回ture不然返回false
- 合并要领
JavaScript供应了以下要领,用于数组迭代合并:
reduce():将数组从左向右迭代。
reduceright():将数组从右向左
var arr = [1,2.3,4,5];
var sum= arr.reduce(function(prev,curr,icdex,array){
}));
console.log(sum);//15