手机访问 | 设为首页 | 加入收藏 | 网站地图

当前位置:电脑中国 > 编程 > web开发 >

利用js实现es6中set的用法

2017-04-01 10:47|来源:未知 |作者:dnzg |点击:

Set()函数可以接受一个数组,作为构造参数,用于做初始化;
add(value):添加某个值,返回Set结构本身;
delete(value):删除某个值,返回一个布尔值,表示删除成功;
has(value):返回一个布尔值,表示参数是否为Set的成员;
clear():清除所有成员,没有返回值;

function Set(arr){
      this.array=arr;
  }
  Set.prototype.has=function(item){
      for(var i=0;i<this.array.length;i++)
      {
          if(this.array[i]==item)
          {
              return true;
          }
          else
          {
              return false;
          }
      }
  };
  Set.prototype.add=function(item){
 
      if(~this.array.indexOf(item))   //~位非运算符,利用indexOf;
      {
          return this.array;
      }
      else{
          this.array.push(item);
      }
      return this.array;
  };
  Set.prototype.delete=function(item){
      for(var i=0;i<this.array.length;i++)
      {
          if(item==this.array[i])
          {
              this.array.splice(i,1);
              return this.array;
          }
     }
  };
 
  Set.prototype.clear=function(){
      this.array=[];
      return this.array;
  };
(责任编辑:dnzg)