JS数组及其操作

数组

数组是属于对象的一种表现形式,用来存储多个值,并且js的数组可以存储多种类型,从下标0开始,用中括号[],定义,长度可变

定义

Var x= new Array()//空数组

Var x= new Array(3)//存储数组的长度

Var x= new Array(3,4,5,6)//存储值

Var x=[2,3,4]//简写

var x=[1,2]

        x[6]=12

        x=[1,2,3]//替换成这个数组

        console.log(x.length)//7  //3

        console.log(x)//[1, 2, 空属性 × 4, 12]  //[1,2,3]

delete x[1]

              console.log(x)//[1, 空白, 3]

添加和修改

x[0]=55

删除:删除值,不删除位置

delete x[1]

查询

for(var i=0;i<x.length;i++){

 X[1]//遍历值

}

for-in循环:用来遍历对象

for(var v in x){

v:索引值 x[v]:值

}

ES5新属性和方法

  1. concat() 连接两个或更多的数组,并返回结果。(新数组)

 var x=[1,2,3,4]

        // var y=["a","c","d","r"]

        // var z=x.concat(y)

        // console.log(z)//[1, 2, 3, 4, 'a', 'c', 'd', 'r'] 返回新数组,不改变原数组

  1. join() 把数组的所有元素放入一个字符串。元素通过指定的分隔符进行分隔。
  2. pop() 删除并返回数组的最后一个元素(删除最后一个)

var x=[5,7,8]

        x.pop(2)

        console.log(x)

  1. push() 向数组的末尾添加一个或更多元素,并返回新的长度。

var x=[1,2,3]

        // console.log(x)

x.push(66,77,88)//尾部添加

        // console.log(x)//[1, 2, 3, 66, 77, 88]

  1. reverse() 颠倒数组中元素的顺序。  
var s="sdd"

         var arr=s.split("")

         console.log(arr)// ['s', 'd', 'd']

         arr.reverse()

         console.log(arr)// ['d', 'd', 's']

         var str= arr.join("")

         console.log(str)//dds
  1. shift() 删除并返回数组的第一个元素(头删除)

var x=[1,2,3]

        

         // x.shift()//头删除,改变长度

        // console.log(x)//[2, 3]

  1. slice() 从某个已有的数组返回选定的元素  
  2. sort() 对数组的元素进行排序  
  3. splice() 删除元素,并向数组添加新元素。

var x=[1,2,3,4]

        // console.log(x)

        // x.splice(1,2,55,66)

        // console.log(x)// [1, 4]  //[1, 55, 66, 4] 删除后添加

  1. unshift() 向数组的开头添加一个或更多元素,并返回新的长度。

ES5新增属性和方法

  1. isArray()判断变量是否是数组类型 //console.log(Array.isArray(x))
  2. some(函数)测试数组中某些值是否通过指定函数,返回布尔值
  3. every(函数) 测试数组中某些值是否完全通过指定函数,返回布尔值
var x=[1,2,4,56,7,86,44]

          var flg= x.some(function(v){

               return v>10

            })

            console.log(flg)//true 任意一个数大于10就行

            var flg1= x.every(function(v){

               return v>10

            })

            console.log(flg1)//false 全部大于10
  1. filter(函数)过滤数组中的值 挑着找返回新数组

var f=x.filter(function(value,index,arr){

                return value>10

            })

            console.log(f);

  1. map(函数)遍历数组中的值,可运算返回新数组 有空位

 var m=x.map(function(value,index,arr){

                return value*2

            })

            console.log(m)// [2, 4, 6, 10, 14, 10, 88, 10, 12]

  1. forEach(函数)遍历数组中的所有值  无返回值

  var x=[1,2,3,5,7,5,44,5,6]

          var v=  x.forEach(function(value,index,arr){ //值,索引,数组

                // console.log(value,index,arr)//1 0 (9) [1, 2, 3, 5, 7, 5, 44, 5, 6]

            })

  1. reduce(函数)遍历数组的值从头到尾合并
  2. reduceRight(函数)遍历数组值从尾到头合并
var x=[1,2,3,5,7,5,44,5,6]

        var sum=x.reduce(function(a,b,c,d){//a:上一个值 b:当前值 c:当前值索引 d:原数组

           //console.log(a,b,c,d)

            return a+""+b

        })

        console.log(sum) //1235754456



        var x=[1,2,3,5,7,5,44,5,6]

        var sum=x.reduceRight(function(a,b,c,d){//第一个值 第二个值

           // console.log(a,b,c,d)

            return a+""+b

        })

        console.log(sum) //6544575321

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

兔子^-^

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值