• 数组 练习题 而已


    //如果数组中存在 item,则返回元素在数组中的位置,否则返回 -1
    
    function indexOf(arr, item) {
        if(Array.prototype.indexOf){
            return arr.indexOf(item)
        }else{
            for(var i=0;i<arr.length;i++){
                
                if(arr[i] === item){
                    return i;
                }
            }        
        }
        return -1
       
    }
    
    indexOf([ 1, 2, 3, 4 ], 3)

      

    //移除数组 arr 中的所有值与 item 相等的元素。不要直接修改数组 arr,结果
    //返回新的数组 
    
    function remove(arr, item) {
        var res = [];
        for(var i=0;i<arr.length;i++){
             if(arr[i]!==item){
                 res.push(arr[i]);
             }
        }
        return res;
    }
    
    remove([1, 2, 3, 4, 2], 2)
    //移除数组 arr 中的所有值与 item 相等的元素,直接在给定的 arr 数组上进行
    //操作,并将结果返回
    
    function removeWithoutCopy(arr, item) {
        for(var i=0;i<arr.length;i++){
            if(arr[i] == item){
                arr.splice(i,1)
                i--;
            }
           
        }
         return arr
    }
    //合并数组 arr1 和数组 arr2。不要直接修改数组 arr,结果返回新的数组 
    
    function concat(arr1, arr2) {
        var res = [];
        if(arguments.length>0){
            for(var i=0;i<arguments.length;i++){
                if(arguments[i] instanceof Array){
                    res.push(arguments[i])
                }
            }        
        }
        return res.join(',').split(',')
    }
    //在数组 arr 的 index 处添加元素 item。不要直接修改数组 arr,结果返回
    //新的数组 
    
    function insert(arr, item, index) {
        var a = [].concat(arr)
        a.splice(index, 0, item)
        return a
    }
    //统计数组 arr 中值等于 item 的元素出现的次数 
    
    function count(arr, item) {
        var num = [];
        for(var i=0;i<arr.length;i++){
            if(arr[i] == item){
                num.push(arr[i])
            }        
        }
        return num.length;
        
    }
    //找出数组 arr 中重复出现过的元素 
    
    function duplicates(arr) {
        var res = [];
        var db = [];
        for(var i=0;i<arr.length;i++){
            if(!db[arr[i]]){
                db[arr[i]] = 1;
                continue;
            }else{
                db[arr[i]]++;
            }
        }
        
        for(var j=0;j<db.length;j++){
            if(db[j]>1){
                res.push(j)
            }
        }
        
        return res
    }
  • 相关阅读:
    数值的格式化
    最近开发的一个多功能选择器
    OCI22053: 溢出错误的原因和解决方法
    js的四舍五入问题
    Vista 下先安装 VS 再装 IIS 7 运行出现 500.19 Error 的解决方法
    最近开发的一个多功能选择器2
    Oracle REF Cursor 用法(转帖)
    Oracle 查询历史数据(转帖)
    HDU 1203 I NEED A OFFER! 动态规划(01背包)
    HDU 1160 FatMouse's Speed 动态规划
  • 原文地址:https://www.cnblogs.com/vali/p/7086655.html
Copyright © 2020-2023  润新知