zoukankan      html  css  js  c++  java
  • js 数组容易弄混的那些方法

    js数组中 我们很多数组的方法都知道其中的含义 但是每一次用的都不是很顺手 下边我给大家写了一个小小的demo 来理解那些 近似”双胞胎“的东西

    // splice方法
         var a=[1,2,3,4,5,6,7,8];
         console.log(a.splice(4))//5 6 7 8 从第四个位置开始删除  返回删除的元素 索引值为0开始 不包括第四个位置的数组元素
         console.log(a)// 1 2 3 4 新的修改完毕的数组
         console.log(a.splice(1,2)) //2 3 返回删除的元素 
         console.log(a)  //1 4
         console.log(a.splice(1,1))  // 4
         console.log(a) //1
         console.log(a.splice(1,2)) //返回空数组 因为没有找到数组元素
          console.log(a) //1  
    
          var b = [1,2,3,4,5];
          console.log(b.splice(2,0,'a','b')) //[]   如果没有删除元素也是返回一个空数组
          console.log(b)  // [1, 2, "a", "b", 3, 4, 5]
          console.log(b.splice(2,2,[1,2],3))   // a b
          console.log(b)  //[1, 2, [1, 2], 3, 3, 4, 5]
          // push 和pop
           var  stack=[];
           console.log(stack.push(1,2))  //2  返回的是数组新的长度
           console.log(stack) // 1 2
           console.log(stack.pop()) //2 
            // 删除数组的最后一个元素减小数组的长度并且返回他删除的数值   返回的是删除的数值  返回的是删除的数值  返回的是删除的数值(重要的事情说三遍)
    
            // unshift 和shift
    
            var a=[];
            console.log(a.unshift(1));   //1   返回数组新的长度  这个是在头部添加元素
            console.log(a.unshift(2));   //2  返回数组新的长度  这个是在头部添加元素
            console.log(a)   // 2 1
    
            console.log(a.shift(2));  //2  删除一个元素并且把他返回
            console.log(a)  // 1
    
            // toString() 和 toLocalestring()
    
            var a = [1,2,3];
            console.log(a.toString()) // 1,2,3
            console.log(a)  // [1,2,3]   注意: toString 适合不使用参数的join方法返回的字符串是一样的
            console.log(a.join())  // 1,2,3
            console.log(a.toLocaleString())  //  1,2,3
    
            // foreach
    
            var date=[1,2,3,4,5];
            var sum = 0;
            date.forEach(function(value){ sum+=value;})
            console.log(sum)  // 15
             date.forEach(function(v,i,a){ a[i]=v+1;})
             console.log(date)  //[2,3,4,5,6]     参数 数组元素 元素索引 数组本身
    
            // map
          a = [1,2,3];
          console.log(a.map(function(x){return x*x}))   // 1,4,9   返回一个新的数组 但是并没有修改原来数组的元素
          console.log(a)  // 1,2,3   
           a = [5,4,3,2,1];
            console.log(a.filter(function(x) {
              return x < 3;
            })) // 2 1
            console.log(a)  // [5,4,3,2,1]
    
           // every 和some
    
           a = [1,2,3];
           console.log(a.every(function(x){return x<10}))  //true
           console.log(a.every(function(x){return x%2===0}))  //false
    
           // indexOf 和lastIndexOf
    
           a = [1,2,3,4];
          console.log(a.indexOf(2))  //1   从头开始返回找到的元素的索引  a[1]=2
          console.log(a.indexOf(1))  //0                         a[0]=1
          console.log(a.lastIndexOf(3));//   从尾开始      2   
          console.log(a.lastIndexOf(1));   // 0  索引为0  
           console.log(a.indexOf(5))//  -1  如果没有找到 那么就返回 -1

    都加上了注释 可以拿过去自己解除 注释 看一下效果  

  • 相关阅读:
    js 前端 table 导出 excel
    js调用RadioButton1
    柱状图
    html锚点定位
    遍历所有lable并赋值
    MiniUI 在线示例
    sql更新语句
    生成word
    打开word
    操作word
  • 原文地址:https://www.cnblogs.com/ling-du/p/4775543.html
Copyright © 2011-2022 走看看