javascript基础--数组(基础,迭代器,扩展数组的方方法)

本文深入讲解了数组的基本操作,包括增删改查及排序方法,同时介绍了数组的扩展方法实现和迭代器应用,是理解JavaScript数组操作的重要资源。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、数组的基础:

增: 

        头部增加:arr.unshift(3,4,5)      arr=[3,4,5]   原arr改变 ,一次可以增多个,括号里可写增加的内容;如 arr=[]

        尾部增加:arr.push(7,6)           arr=[3,4,5,7,6]  原arr改变 ,一次可以增多个,括号里可写增加的内容;如 arr=[]

删:

       尾部删: arr.pop()     原arr改变 ; 括号里不需要参数,一次只删一个

        头部删:arr.shift()     原arr改变 ; 括号里不需要参数,一次只删一个

改:

   连接:arr.concat(arr1)    c=arr.concat(arr1)   arr和arr1连接成一个新的数组c,原数组都不变,返回新数组

  截取:arr.slice(index1,index2)  参数index可正可负,包含arr[index1],不包含arr[index2],原数组都不变,返回新数组

  综合:arr.splice(1,2,3,4,5),其中第一个参数为index,第二个参数为删除的个数,其余的为在原位置上替换的新内容, 返回被删                   除的内容,原数组也改变,如arr=[1,3,4,5] arr.splice(1,2,66,77,88) 返回[3,4] ,原数组arr=[1,66,77,88,5]

查:

  for循环: for(var i=0,length=arr.length;i<length;i++){ console.log( arr[i])}  遍历出数组的每一项

 for/in:  for(var item in arr){ console.log(arr[item])}

排序:

    翻转:arr.reverse()    原arr改变  arr=[1,2,3,4] arr.reverse()   [4,3,2,1]

    排序:sort(f)     sort()默认按字母升序,可以定义函数f,定制排序规则

       数值 小到大 :   function f(a,b){return a-b}      arr.sort(f) 返回的是 数值小到大的数组(是原数组改变的)

       数值大到小:    function g(a,b){return b-a}     arr.sort(g) 返回的是 数值大到小的数组(是原数组改变的)

 

二--数组的扩展方法:

 Array.prototype._m=Array.prototype.m||(Array.prototype.m=function(){ //扩展方法的具体代码 });

Object.prototype.m=Array.prototype._m

举例:为数组扩展一个求所有元素和的方法

 Array.prototype._m=Array.prototype.m||(Array.prototype.m=function(){

       //扩展方法的具体代码 

   var _n=0;

   for(var i in this){

     if(this[i]=parseFloat(this[i])){_n+=this[i]}  //如果数组元素是数字,则进行累加(先试图把每个元素转成浮点数,成功则相累加,失败返回NaN,会忽略该元素的值)

 }

return _n; //返回累加的和

});

Object.prototype.m=Array.prototype._m

var a=[1,2,3,4,5,6,7,8,"9"]  a.m()  //45

三、数组迭代器(未完待续)

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值