js Array 数组方法扩展


//去重复
  Array.prototype.unique = function()
 {
    this.sort();
    var re=[this[0]];
    for(var i = 1; i < this.length; i++)
    {
        if( this[i] !== re[re.length-1])
        {
            re.push(this[i]);
        }
    }
    return re;
 }

 //并集
 Array.prototype.union = function(a)
 {
   return this.concat(a).unique(); 

 }
 //差集
 Array.prototype.minus = function(a)
 {
    var result =[];
    var clone = this;
      for(var i=0; i < clone.length; i++)
      {
          var flag = true;
          for(var j=0; j < a.length; j++)
          {
            if(clone[i] == a[j])
            flag = false;
          }
        if(flag)
        result.push(clone[i]); 

      }

    return result.unique(); 

 }
// 交集
Array.prototype.intersect = function(b) {
    var result = [];
    var a = this;
    for(var i = 0; i < b.length; i ++) {
        var temp = b[i];
        for(var j = 0; j < a.length; j ++) {
            if(temp === a[j]) {
                result.push(temp);
                break;
            }
        }
    }
    return result.unique();
}
时间: 2024-12-12 17:53:53

js Array 数组方法扩展的相关文章

js Array数组的使用

js Array数组的使用 Array是javascript中的一个事先定义好的对象(也可以称作一个类),可以直接使用 创建Array对象 var array=new Array(): 创建指定元素个数的Array对象 var  array=new Array(23): 创建具有指定元素的Array对象: var array=new Array(‘张飒’,'李四','物流','张贲'): 输出Array对象中的所有元素的值 for...in var array=new Array(‘张飒’,'李

JavaScript Array 数组方法汇总

JavaScript Array 数组方法汇总 1. arr.push() 从后面添加元素,返回值为添加完后的数组的长度 var arr = [1,2,3,4,5] console.log(arr.push(5)) // 6 console.log(arr) // [1,2,3,4,5,5] 2.arr.unshift() 从前面添加元素, var arr = [1,2,3,4,5] console.log(arr.unshift(2)) // 6 console.log(arr) //[2,1

js数组方法扩展

/** * Created by Administrator on 2016/9/1. */ //数组去重 Array.prototype.unique = function(){ this.sort(); var re=[this[0]]; for(var i = 1; i < this.length; i++){ if( this[i] !== re[re.length-1]){ re.push(this[i]); } } return re; } //扩展数组方法:查找指定元素的下标 Ar

js之数组方法

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>js 数组</title> </head> <body> <script> /*数组的创建*/ var arr1=new Array();//[],length=0 arr2=new Array(10);//[],leng

JS部分数组方法

JavaScript——部分数组方法 1.push() 可以接收任意数量的参数,,把它们逐个添加到数组末尾,并返回修改后的数组的长度. var arr = [1, 2,3]; var op = arr.push("echo 'hello world!'"); //4 console.log(arr); //[1,2,3,echo 'hello world!'] 2.pop() 从数组末尾移除最后一项,减少数组的length值,然后返回移除的项. var arr = [1, 2,3];

js Array数组对象常见方法总结

Array对象一般用来存储数据. 其常用的方法包括: 1.concatc()方法 concat() 方法用于合并两个或多个数组.它不会更改现有数组,而是返回一个新数组. 例如: var arr1=[1,2,3]; var arr2=[4,5,6]; var arr3=arr1.concat(arr2,"7",8,[9,10]); document.write(arr3);//1,2,3,4,5,6,7,8,9,10 2.join()方法 join方法通过指定的分隔符将数组连接成字符串.

JS中数组方法的封装之slice

slice方法的功能 // 1) : 数组的截取 // 2) :slice(m,n): 从数组索引m开始,截取到索引n,但是不包含n;[前包后不包] // slice(m) : 从索引m开始,截取到末尾: // slice():数组的克隆 slice(0); // // 索引负数: 让当前length+负数: // 3) : 返回值是截取的数组 // 4) : 原有数组不发生改变: /** * 首先:先分清楚slice有几种情况,slice的思想 * 传的参数可以是其他类型的数据,只要能转成有效

Array数组方法的总结

添加元素: 1. push(arg1,arg2,arg3....)  向数组的尾部添加元素,返回值是数组的长度. 2.unshift(arg1,arg2,arg3....) 向数组的头部添加元素,返回数组的长度. 3.splice(pos,0,arg1,arg2,arg3...) splice的第二个参数为0的情况下,代表向数组里添加元素.从pos位置开始插入,插入的元素为arg1,arg2,arg3...;返回值为空数组 删除元素: 1.pop() 删除并返回数组最后一个元素. 2.shift

js的数组方法整理

slice 从已有的数组中返回选定的元素.该方法不会修改数组,而是返回一个子数组. 语法:arr.slice(start,end) start: 必须,规定从何处开始选取.如果是负数,就是从尾部开始算起的位置(-1指最后一个元素,-2指倒数第二个元素): end:   可选,规定从何处结束选取.如果没有指定,则切分的数组包含从start到数组结束的所有元素. 示例: 1 var arr = [0, 4, 5, 4, 7, 6, 9]; 2 arr.slice(2, 4); //[5,4] 3 a