js中如何去除list中的重复数据

JavaScript011

js中如何去除list中的重复数据,第1张

最笨的方法:

var list = [1, 2, 3, 6, 7, 8, 9, 1, 2, 3, 6]//有重复的数组

var obj = {}//用于标记字符串

var arr = []//去掉重复后的数组

for (var i = 0, len = list.length i < len i++) {

    var s = list[i]

    if (obj[s]) continue//如果字符串已经存在就跳过

    else {

        obj[s] = s//加入标记对象中

        arr.push(s)//结果放入新数组中

    }

}

当jquery中有封装好的去重复方法,还有其他第三方js插件也存在去重复的方法。

原因:数组从0开始,

//删除数组中的元素 那一段

arr.remove(1) //其实是移出的第二个。第一个为0

.....

arr.remove(3)

//要实现 打印 b2b 应为

var list=new Array(0,2)

var arr = ['a','b','c','d','e','f','g','h','i']

for(let i=0i<arr.lengthi++){

// arr.splice(i,1)//(循环删除所有元素)i是索引,1是长度,null的意思是该元素替换为null

if(i==2){

arr.splice(i,1)//删除第2个元素

arr.splice(i+2,1,null)//把第4个位置的元素替换为null

arr.splice(i+3,2,['w','z'])//把第5和第6位置的元素替换为w和z

}

}

删除对象:

let list = that.navList[1].orderList

let index = list.findIndex(val =>val.time === item.time)

index !== -1 &&list.splice(index, 1)