1 /** 2 * 对于由简单类型数据组成的对象为元素组成的数组进行去重操作 3 * @params {array} 需要去重的对象数组 4 * @returns {array} 去重后的对象数组 5 */ 6 function distinct(sourcearray) { 7 8 var resultarray = []; 9 var i, j, currentsource, currentresult; 10 11 for (i = 0; i < sourcearray.length; i++) { 12 13 currentsource = sourcearray[i]; 14 15 if (resultarray.length === 0) { 16 resultarray.push(currentsource); 17 continue; 18 } 19 20 for (j = 0; j < resultarray.length; j++) { 21 22 currentresult = resultarray[j]; 23 24 if (!compare(currentresult, currentsource)) { 25 resultarray.push(currentsource); 26 } 27 28 } 29 30 } 31 32 return resultarray; 33 34 function compare(obj1, obj2) { 35 for (var prop in obj1) { 36 37 if (!obj1.hasownproperty(prop)) { 38 continue; 39 } 40 41 if (obj1[prop] !== obj2[prop]) { 42 return false; 43 } 44 45 } 46 47 return true; 48 } 49 50 }
如对本文有疑问, 点击进行留言回复!!
【JavaScript笔记(一)】万丈高楼平地起 - 基本概念篇
轻松解决 org.apache.taglibs.standard.tlv.JstlCoreTLV 困惑
vert实践五——Json?Protocol Buffer?FlatBuffers?
[基于tensorflow的人脸检测] 基于神经网络的人脸检测8——验证训练好的神经网络
网友评论