zoukankan      html  css  js  c++  java
  • 数组练习

      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>
  • 相关阅读:
    【校招面试 之 C/C++】第23题 C++ STL(五)之Set
    Cannot create an instance of OLE DB provider “OraOLEDB.Oracle” for linked server "xxxxxxx".
    Redhat Linux安装JDK 1.7
    ORA-10635: Invalid segment or tablespace type
    Symantec Backup Exec 2012 Agent for Linux 卸载
    Symantec Backup Exec 2012 Agent For Linux安装
    You must use the Role Management Tool to install or configure Microsoft .NET Framework 3.5 SP1
    YourSQLDba介绍
    PL/SQL重新编译包无反应
    MS SQL 监控数据/日志文件增长
  • 原文地址:https://www.cnblogs.com/BingBing-Deng/p/10278168.html
Copyright © 2011-2022 走看看