JavaScript数组常见方法总结,数组的插入,删除,排序等.以及数组求平均数的实现

JavaScript数组常用方法有数组的插入,删除,排序…,
这篇文章整理出JavaScript数组的常用方法,
废话不多说,上干货:
1.栈结构:先进后出,从同一头进同一头出
两种方法形成栈结构:
push

格式:数组.push(参数1,参数2…);

功能:给数组的末尾添加元素;

例:
v

ar arr =["北京","上海","广州"];
                arr.push("杭州");
                alert(arr);

注意:push的返回值为插完元素后的长度;

pop方法
格式:数组.pop()
**参数:**没有参数
返回值:取下一个元素
**功能:**从数组的尾部取下一个元素
例:

 var arr =["北京","上海","广州"];
                        var res = arr.pop();
                        alert(res);取出广州

2.队列结构:先进先出 从尾进,从头出

push这个push和上面的方法是一致的,不过注意使用的结构

格式:数组.push(参数1,参数2…);
**功能:**给数组的末尾添加元素;
例:

var arr =["北京","上海","广州"];
                    arr.push("杭州");
                    alert(arr);

shift
结构:数组.shift()
参数:没有参数
**功能:**从数组头部取下一个元素
返回值:取下的元素
例:

var arr =["唐朝","宋朝","元朝","清朝"];
                    var res = arr.shift();
                    alert(res);唐朝
                    alert(arr);宋 元 清

unshift
结构:数组.unshift(参数1,参数2…)
功能:从数组的头部开始插入元素
返回值:插入元素后数组的长度

concat():
功能:1.拷贝数组,生产新数组
2.合并数组
格式:数组.concat(数组,数据,…);
返回值:合并成的新数组,返回新数组

例:

var arr1 = [10,20,30];
 var arr2 = [50,60,70];
var newarr = arr1.concat(arr2,"hello",true);
alert(newarr);
 结果:10,20,30,50,60,70,hello,true


slice():
格式:数组.slice(start, end);
**功能:**可以基于当前数组获取指定区域元素[start , end) ,取出元素生成新的元素
返回值:生成新的数组,原数组不会发生任何改变。

splice():
格式: 数组.splice(start , length ,数据1,数据2…)
start:开始截取的位置
length:截取的长度
第三个元素开始:在start位置,插入的元素

功能:
1增加:

 var arr = [19,23,52,53,22];
var ser =arr.splice(2,0,"hello",true);
alert(arr);  //19,23,hello,true,52,53,22
alert(ser);为空  因为截取长度为0

2删除:

var arr = [19,23,52,53,22];
var ser =arr.splice(2,2);
alert(arr); //19 23 22
alert(ser);//52 53

3 修改:
先修改再增加

var arr = [19,23,52,53,22];
 var ser =arr.splice(2,1,"hello");
alert(arr); //19,23,hello,53,22
alert(ser) //52

join()
格式:数组.join(字符串)
功能:将数组中的元素,用传入的拼接符,拼成一个字符串
返回值:拼接好的字符串

 var arr  = [12,42,52,53];
 var res = arr.join("==");
alert(res); //12==42==52==53

reverse() 逆序
语法:数组.recerse():使原数组进行逆序处理

sort()数组排序
语法:数组.sort() 默认从小到大排序,按照字符串进行排序的
如果需要按照数值的大小进行排序(固定用法):
sort排序的方法也可以用冒泡排序,以及直接排序替换,看大家更喜欢哪一种。

  var arr =[10,5,23,1,6];
arr.sort(function(value1 , value2){
return value1-value2;
 })
 alert(arr);  从小到大顺序输出

//将value1-value2 交换位置

 var arr =[10,5,23,1,6];
arr.sort(function(value1 , value2){
 return value1-value2;
 })
 alert(arr);  从大到小顺序输出

数组求平均值:

例:定义一个含有30个整型元素的数组,按顺序分别赋予从2开始的偶数;然后按顺序每5个数求去一个平均值,放在另一个数组中并输出

var arr = new Array(30);
        for(var i = 0;i<arr.length;i++){
            arr[i] = i*2 + 2;
        }
        var aveArr =[];
        for(var i = 0;i<6;i++){
            //取出要求平均值的5个元素
            var newArr = arr.splice(0,5);
            //splice 截取长度后,会让数组从原数组消失
            var sum = 0;
            for(var j=0;j<newArr.length;j++){
                sum += newArr[j];
            }
            aveArr.push(sum/5);
        }
        alert(aveArr);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值