日期:2014-05-16  浏览次数:20463 次

筛选出两个数组的不同部分
本帖最后由 z526283019 于 2013-12-25 12:19:05 编辑
     
    var arr1 = ['1000', '1001', '1002', '1003', '1004', '1005', '1006', '1007', '1008', '1009', '1010'];
    var arr2 = ['1000', '1001', '1002', '1003', '1004'];
            //怎么最后得到
    var Result = ['1005', '1006', '1007', '1008', '1009', '1010'];

------解决方案--------------------
js取数组两个数组的交集
------解决方案--------------------
差集
------解决方案--------------------
并集
------解决方案--------------------
补集
------解决方案--------------------
去重

/**
* each是一个集合迭代函数,它接受一个函数作为参数和一组可选的参数
* 这个迭代函数依次将集合的每一个元素和可选参数用函数进行计算,并将计算得的结果集返回
{%example
<script>
     var a = [1,2,3,4].each(function(x){return x > 2 ? x : null});
     var b = [1,2,3,4].each(function(x){return x < 0 ? x : null});
     alert(a);
     alert(b);
</script>
%}
* @param {Function} fn 进行迭代判定的函数
* @param more ... 零个或多个可选的用户自定义参数
* @returns {Array} 结果集,如果没有结果,返回空集
*/
Array.prototype.each = function(fn){
    fn = fn 
------解决方案--------------------
 Function.K;
     var a = [];
     var args = Array.prototype.slice.call(arguments, 1);
     for(var i = 0; i < this.length; i++){
         var res = fn.apply(this,[this[i],i].concat(args));
         if(res != null) a.push(res);
     }
     return a;
};
/**
* 得到一个数组不重复的元素集合<br/>
* 唯一化一个数组
* @returns {Array} 由不重复元素构成的数组
*/
Array.prototype.uniquelize = function(){
     var ra = new Array();
     for(var i = 0; i < this.length; i ++){
         if(!ra.contains(this[i])){
 &n