最近常常遇到js兩個數組比較元素差異,特此記錄方便之後查找。javascript
<!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <script type="text/javascript" src="jquery-1.7.2.min.js"></script> <title>測試</title> <script type="text/javascript"> var a1 = [1,3,4,5,6]; var a2 = [2,3,7]; var shao = []; var duo = []; var hebing = a1.concat(a2); hebing.sort(); hebing.reverse(); var quchong = $.unique(hebing); console.info(a1); console.info(a2); console.info(quchong); quchong.forEach(function(qitem,index,array){ if(a1.every(function(item,qindex,array){return qitem != item;})) { duo.push(qitem); } if(a2.every(function(item,qindex,array){return qitem != item;})) { shao.push(qitem); } }); console.info("a2比a1多的元素"+duo); console.info("少的元素"+shao); </script> </head> <body> </body> </html>