数组练习

  1 <!DOCTYPE html>
  2 <html>
  3 <head lang="en">
  4     <meta charset="UTF-8">
  5     <title></title>
  6 </head>
  7 <body>
  8 <script>
  9 //    将一个字符串数组输出为|分割的形式,比如“刘备|张飞|关羽”。使用两种方式实现
 10 //    var arr = ["刘备","张飞","关羽"];
 11 //    var str = arr[0];
 12 //    var separator = "|";
 13 //    for(var i=1;i<arr.length;i++){
 14 //        str+=separator+arr[i];
 15 //    }
 16 //    console.log(arr.join("|"));
 17 
 18 //    将一个字符串数组的元素的顺序进行反转。["a","b","c","d"] ["d","c","b","a"]。使用两种种方式实现。提示:第i个和第length-i-1个进行交换
 19 //    var arr1 = [1,2,3];
 20 //    console.log(arr1.reverse());
 21 
 22 ////第一种
 23 //    function reverse1(array){
 24 //        var newArr = [];
 25 //        for(var i=array.length-1;i>=0;i--){
 26 //            newArr[newArr.length] = array[i];
 27 //        }
 28 //        return newArr;
 29 //    }
 30 ////第二种
 31 //    function reverse2(array){
 32 //        for(var i=0;i<array.length/2;i++){
 33 //            var temp = array[i];
 34 //            array[i] = array[array.length-1-i];
 35 //            array[array.length-1-i] = temp;
 36 //        }
 37 //        return array;
 38 //    }
 39 
 40 
 41 //    工资的数组[1500,1200,2000,2100,1800],把工资超过2000的删除
 42 //      var arr3 = [1500,1200,2000,2100,1800];
 43 //
 44 //    var arr4 = arr3.filter(function (ele,index,array) {
 45 //        if(ele<2000){
 46 //            return true;
 47 //        }
 48 //        return false;
 49 //    })
 50 //    console.log(arr3);
 51 //    console.log(arr4);
 52 
 53 
 54 //    ["c","a","x","a","x","a"]找到数组中每一个元素出现的次数
 55     //利用对象来做。我们想知道,a出现了几次,c出现了几次,x出现了几次。
 56     //k:v ..  k:v使用键值对比较方便,而使用数组,不太方便了。
 57     //思路:创建一个对象,判断数组中的元素,在对象中是否存在,如果存在,值+1;否则创建一个数组元素的属性,然后给值赋值为1;
 58 
 59 //    var arr5 = ["c","a","x","a","x","a"];
 60 //
 61 //    var json = {};
 62 ////    console.log(json["aflasdfasdf"]); 不存在的属性,返回值是undefined。
 63 //    for(var i=0;i<arr5.length;i++){
 64 //        //判断数组中的元素,在json中是否存在属性值。
 65 //        if(json[arr5[i]]){
 66 //            json[arr5[i]] += 1;
 67 //        }else{
 68 //            json[arr5[i]] = 1;
 69 //        }
 70 //    }
 71 //    console.log(json);
 72 
 73 //var  json = {"kkk":1};
 74 //json["kkkk"] = 1;
 75 
 76 //    编写一个方法 去掉一个数组的重复元素
 77     var arr = [1,2,3,4,5,2,3,4];
 78     console.log(arr);
 79     var aaa = fn(arr);
 80     console.log(aaa);
 81     //思路:创建一个新数组,循环遍历,只要新数组中有老数组的值,就不用再添加了。
 82     function fn(array){
 83         var newArr = [];
 84         for(var i=0;i<array.length;i++){
 85             //开闭原则
 86             var bool = true;
 87             //每次都要判断新数组中是否有旧数组中的值。
 88             for(var j=0;j<newArr.length;j++){
 89                 if(array[i] === newArr[j]){
 90                     bool = false;
 91                 }
 92             }
 93             if(bool){
 94                 newArr[newArr.length] = array[i];
 95             }
 96         }
 97         return newArr;
 98     }
 99 
100 
101 
102 </script>
103 </body>
104 </html>

 

转载于:https://www.cnblogs.com/BingBing-Deng/p/10278168.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值