开发者社区> 问答> 正文

JavaScript数组值去重,但是返回的类型和原类型不一样, 怎么转换

var arr = [2,1,2,10,2,3,4,1,85,321,3,4,65,10,24];
    function uniq(newarr){
        function toObject(arr) {
            var obj = { };
            for(var i=0 ;i<arr.length ;i++){
                obj[ arr[ i ] ]=true;
            }
            return obj ;
        }
        function keys(obj){
            var arr = [ ] ;
            for(var attr in obj){
                if(obj.hasOwnProperty(attr)){
                arr.push(parseInt(attr));
                }
            }
            return arr;
        }   
        return keys(toObject(newarr));
    }

展开
收起
云栖技术 2016-06-02 11:01:46 1923 0
2 条回答
写回答
取消 提交回答
  • php是世界上最好的语言

    不错不错

    2019-07-17 19:24:19
    赞同 展开评论 打赏
  • 社区爱好者,专为云栖社区服务!
    var arr = [2,1,2,10,2,3,4,1,85,321,3,4,65,10,24];
    function onRepeat(){
    var json={};
    var temArr=[];
    for(var i=0;i<arr.length;i++){
    (function(n){
    json[n]=1;
    })(i);
    }
    for(var key in json){
    temArr.push(json[name]);
    }
    return temArr;
    2019-07-17 19:24:19
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
JavaScript函数 立即下载
Delivering Javascript to World 立即下载
编程语言如何演化-以JS的private为例 立即下载