收藏
回答

JS数组去重。


         var hash = {};
         var Arr = that.data.BlueDeviceArray;
         Arr = Arr.reduce(function(arr, current) { //根据deviceId去重
            //hash[current.deviceId] = true &&
            hash[current.deviceId] ? '' : hash[current.deviceId] = true && arr.push(current);
            return arr
         }, []);
         that.data.BlueDeviceArray = Arr;

要求:(上面已经实现了去重要求) 去除图片显示的数据(蓝牙设备)重复的。(ios扫描蓝牙的时候会添加重复蓝牙设备)。

问题: 1.hash = {};这是个空的字典(map);为什么能 hash[current,deviceId]的操作。

2.hash[current.deviceId] = true 怎么理解,我去掉之后是不能实现去重。

PS:iOS转行做小程序,正在学习中,多多指教。 经过我的同意可以转载。原创!

最后一次编辑于  2019-01-07
回答关注问题邀请回答
收藏

1 个回答

  • LITONGXUE丶
    LITONGXUE丶
    2019-01-07

    js中对象使用方括号[ ]可以赋值,也可以取值,你这个属于赋值添加属性;


    2019-01-07
    有用
    回复
登录 后发表内容