数组
数组的一些操作方法
1.数组的length属性:用来计算数组的长度,也就是数组元素的个数
    var arr = [1,2,3,4,5];
    console.log(arr.length); //结果是5

2.数组的push方法:用来向数组的尾部添加新的元素
    var arr = [1,2,3,4,5];
    arr.push(6,7,last);
    console.log(arr) // 输出结果为[1,2,3,4,5,6,7,last]
    
3.数组的unshift方法:用来向数组元素的前面添加元素
    var arr = [1,2,3,4,5];
    arr.unshift(0,-1,"before");
    console.log(arr); // 结果为  [0,-1,before,1,2,3,4,5]
    
4.数组的pop方法:用来删除数组里面的最后一个元素
    var arr = [1,2,3,4,5];
    arr.pop();
    console.log(arr); // 结果为 [1,2,3,4]
    
5.数组的shift方法:用来删除数组里面的第一个元素
    var arr = [1,2,3,4,5];
    arr.shift();
    console.log(arr); // 结果为 [2,3,4,5]
    
6.数组的splice方法:用来对数组元素进行切割,并且可以增删改的操作
    var nameArr = ["洋洋","芳芳","圆圆","小明"];
    //当splice只有一个参数n的时候 splice(n),只保留数组的前n个元素,后面的删除
    nameArr.splice(3);
    console.log(nameArr); // 结果为 ["洋洋","芳芳","圆圆"]
     
    //当splice有两个参数的时候 splice(n,m),第一个参数n代表删除的起始位置,第二个参数m代表删除的个数,切记n代表的元素在数组中的位置
    nameArr.splice(1,2);
    console.log(nameArr); // 结果为 ["洋洋","小明"]
     
    //当splice有多个参数的时候splice(n,m,k),第一个参数n代表参数的起始位置,第二个参数m代表删除的个数,第三个及以上元素插入到我们删除的位置
    nameArr.splice(2,2,99,999);
    console.log(nameArr); // 结果为 ["洋洋","芳芳",99,999]
    
    7.数组排序
    sort方法
      var arr=["1","2","3","-5","-7"];
      //从小到大排序
      arr.sort(function(a,b){
          return a-b;
  
      })
     console.log(arr)
      //从大到小,直接把从小到大的给反向排序
      arr.reverse();
      console.log(arr);
      //冒泡
      function bSort(arr) {
          var len = arr.length;
          for (var i = 0; i < len-1; i++) {
            for (var j = 0; j < len - 1 - i; j++) {
                 // 相邻元素两两对比,元素交换,大的元素交换到后面
                if (arr[j] > arr[j + 1]) {
                    var temp = arr[j];
                    arr[j] = arr[j+1];
                    arr[j+1] = temp;
                }
            }
          }
          return arr;
      }

      //举个例子
      myArr = [20,18,27,19,35];
      //使用函数
      bSort(myArr)
      8.把数组里的每一项转换为数字
         var arr=["1","2","3","-5","-7"];
         var s=arr.map(Number); 
         console.log(s)

     9.数组去重
        var  arr=[1,2,3,4,5,4,2,1,3];
        function removal(arr){
          for(var i=0;i<arr.length;i++){
            for(var j=i+1;j<arr.length;j++){
              if(arr[i]==arr[j]){
                arr.splice(j,1);
              }
            }
          }
        }
        removal(arr);
        console.log(arr);
        
        
        es6数组去重
          let a=[1,23,5,5];
          let b = [...new Set(a)];
          console.log(b)
         
        es6数组对象去重  
         function removalRepeat (arr) {
              let map = new Map()
              for (let i of arr) {
                  map.set(i.code, i)
              }
              arr = [...map.values()]
              console.log(arr)
        }
 
  10.数组对象求和
    const arr = [1, 2, 3, 4, 5]
    const sum = arr.reduce((pre, item) => {
        return pre + item
    }, 0)
    console.log(sum) // 15
   
   11.删除数组中的某一项
    const arr = [1, 2, 3, 4, 5]
    delete arr[i]
   12.获取数字的长度
   let s2=1;
    console.log(s2.toString().length)
    
   13.数组里面是对象,取对象的key和value
    let discount={
                "100": "0.9",
                "200": "0.85"
            };
            
    for(let i in discount){
        console.log('对象的key:'+i)   
        console.log('对象的value:'+discount[i]) ; 
    }

 

时间一直在走,没有尽头,只有路口