var code='JS对象'
//console.log('打印字符串'+JSON.stringify(code))
老是忘记, 记录下来
以下是去重复的方法var array = [
{a:1,b:2,c:3,d:4},
{a:11,b:22,c:333,d:44},
{a:111,b:222,c:333,d:444},
{a:11,b:22,c:33,d:44},
{a:11,b:22,c:33,d:444}
];//将对象元素转换成字符串以作比较
function obj2key(obj, keys){
var n = keys.length,
key = [];
while(n--){
key.push(obj[keys[n]]);
}
return key.join('|');
}
//去重操作
function uniqeByKeys(array,keys){
var arr = [];
var hash = {};
for (var i = 0, j = array.length; i
var k = obj2key(array[i], keys);
if (!(k in hash)) {
hash[k] = true;
arr .push(array[i]);
}
}
return arr ;
}
调用方法//进行去重
var arr = uniqeByKeys(array,['a','b']);
最后得到array = [
{a:1,b:2,c:3,d:4},
{a:11,b:22,c:333,d:44},
{a:111,b:222,c:333,d:444}
];
小程序里使用var newarray =l.data //新数组
var newarrays = newarray.concat('老数组'); //新的和旧的合并
var arr = that.uniqeByKeys(newarrays,['productid']);//调用方法去重
//将对象元素转换成字符串以作比较
obj2key:function(obj, keys){
var n = keys.length,
key = [];
while(n--){
key.push(obj[keys[n]]);
}
return key.join('|');
},
//去重操作
uniqeByKeys:function(array,keys){
var arr = [];
var hash = {};
for (var i = 0, j = array.length; i
var k = this.obj2key(array[i], keys);
if (!(k in hash)) {
hash[k] = true;
arr.push(array[i]);
}
}
return arr ;
}