javascript数组去掉重复项

javascript前世今生

完整的JavaScript实现包含三个部分:
ECMAScript,文档对象模型,字节顺序记号。
ECMAScript最初的设计是一种网页脚本语言。ECMAScript是一种由欧洲计算机制造商协会(ECMA)通过ECMA-262标准化的脚本程序设计语言。这种语言在万维网上应用广泛,它往往被称为JavaScript或JScript,但实际上后两者是ECMA-262标准的扩展。

// js对象的特性:在js对象中 key是永远不会重复的
            var arr =  [2,1,2,10,2,3,5,5,1,10,13];

            var obj = new Object();
            obj.name = "z3";
            obj.age = 20;
            /*
            alert(obj.name);
            obj.name = "z5";
             */         
            // 1.把数组转成一个js的对象
            // 2.把数组中的值,编程js对象当中的key
            // 3.把这个对象,再还原成数组
            var toObject = function(arr){
            //console.log(arr.length)
                var obj = {};// 私有的对象
                var j;
                for(var i = 0,j = arr.length;i<j;i++ ){
                    obj[arr[i]] = true;
                }
                return obj;
            }
            //console.log(toObject(arr));

            // 把对象转成数组
            function keys(obj){
                var arr = [];
                for(var attr in obj){
                    if(obj.hasOwnProperty(attr)){
                        arr.push(attr);
                    }
                }
                return arr;
            }
            console.log(keys(obj));

            function uniq(newarr){
                return keys(toObject(newarr));
            }
            alert(uniq(arr));       
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值