一、两种创建数组的方法
1)常见的:
var arr = [1,2,3];
2)高逼格创建方法:
var arr = new Array(3);
arr[0] = 1;
arr[1] = 2;
arr[2] = 3;
console.log(arr);
二、把数组转换成字符串
var arr = [1,2,3];
var str = arr.join('+'); //输出为1+2+3;
三、怎样根据数组的长度与下标来找数组最后一位数值
var i = ['1','2','3','4'];
var len =i.length; //先把数组的length长度转化出来;
console.log(i[len-1]); //length-1就是找到最后一位数值的下标;
四、怎样在数组最后一位增加数值和删减数值
var aa =['1','2','3','4']
var shajian = aa.pop(); //把数组中的最后一个值给删掉;
console.log(shajian);
console.log(aa); //此时输出 pop 会输出删完之后的数组;
var bianliang = aa.push('hahaha','riririr'); //在数组的末端增加()里面的内容成为一个新数值;
console.log(bianliang);
console.log(aa); //输出 push 会输出增加之后的数组;
五、怎样在数组始端增加一位数值和删减数值
var bb = ['11','22','33','44'];
var bt = bb.shift(); //在数组始端减掉一个数值;
console.log(bb);
console.log(bt); //此时输出 shift 会输出被减掉的那个数值;
var bl = bb.unshift('aaaa','bbbb'); //在数组始端增加两个数值;
console.log(bl); //此时输出 unshift 会显示增加之后的数组的长度(length);
console.log(bb); //此时输出 数组 显示为增加之后的数组;
六、怎样把数组倒序显示
var arr = new Array(3);
arr[0] = 'one';
arr[1] = 'two';
arr[2] = 'thre';
console.log(arr);
console.log(arr.reverse());
七、怎样把两个数组相加
var abc = ['1','2','3'];
var cba = ['3','2','1'];
var sum = abc.concat(cba); //将两个数组相加起来;
console.log(sum);
八、slice与splice的作用性
1)slice
var asd = ['1','2','3','4','5','6','7'];
var sli = asd.slice(0,4); //将数组进行裁剪复制,根据下标进行位置寻找,从0-4中的数值,但是不包括第四个;
console.log(asd); //不会改变原来的数组,相当于粘贴复制;
console.log(sli);
2)splice
var fgh = ['1','2','3','4','5','6','7'];
var spli = fgh.splice(0,4); //将数组进行裁剪,第一个值是从第0个下标开始,后面的值是裁剪几个;
console.log(fgh); //会改变原来的数组,裁剪几个 就去掉几个;
console.log(spli);
九、怎样有针对性的找到某一个数值的下标
1)indexOf
var aaa = ['9','9','1','2','3','4','9'];
var bbb = aaa.indexOf('9',2); //找数组中是9的数值,(9,2)第一个是找什么数,第二个是从下标第几个开始找;
console.log(bbb); //然后输出返回为1的数的下标;
2) lastIndexOf
var aaa = ['9','9','1','2','3','4','9'];
var ccc = aaa.lastIndexOf('1',5); //找数组中是1的数值,(1,5)第一个是找什么数,第二个值是找到下标为5的数,然后从下标为5的数从右向左找为1的数,返回第一个。
console.log(ccc);
十、迭代方法,对数组进行筛选判断,自带循环;
我们先来定义一个数组
var d = [2,4,4,4,4,2]
1)every
var ev = d.every(function (item,index,array) {
return (item > 2); //对数组的每一个数值进行条件筛选,只有都>2时,都为true时,最后输出结果才返回true;
});
2)some
var som = d.some(function (item,index,array) {
return (item > 2) //对数组的每一个数值进行条件筛选,只要有一个数值满足条件,就会返回true;
})
console.log(ev);
3)filter
var fil = d.filter(function (item,index,array) {
return (item > 3) //对数组的每一个数值进行条件筛选,把满足条件的数值组合成一个新的数组;不会改变原来的数组;
})
console.log(fil);
4)map
var ma = d.map(function (item,index,array) {
return (item * 3) //对数组的每一个数值与条件进行计算,返回计算过后的结果,组成新的数组;
})
console.log(ma);
5)forEach
var fo = d.forEach(function (item,index,array) {
return (item * 3) //该方法没有返回值;
})
console.log(fo);
6)reduce
var re = d.reduce(function (prev,cur,index,array) {
return prev+cur; //会对每一个数值进行相加,2+4=6 +4=10 +4=14 +4= 18...+2=...
})
console.log(re);
7)reduceRight
var rer = d.reduceRight(function (prev,cur,index,array) {
return prev+cur; //会对每一个数值进行相加从有向左依次相加;
})
console.log(rer);