ES6学习笔记之Set

栏目: JavaScript · 发布时间: 6年前

内容简介:基本属性它和数组类似,但是数组中的成员值是唯一的没有重复值,Set结构的实例有以下属性构造函数,默认就是set函数:

Set

基本属性它和数组类似,但是数组中的成员值是唯一的没有重复值, Set 本身是一个构造函数用来生产一个数据结构

let arr = [1,2,3,3,4,5,5,6,5];
let content = new Set(arr);
console.log(content) //1,2,3,4,5,6

set实例和方法

Set结构的实例有以下属性

构造函数,默认就是set函数: Set.prototype.constructor

返回总数, Set.prototype.size 可以简写为 Set.size

操作方法和遍历方法

add(value) delete(value) has(value) clear()
添加数值返回set本身 删除某个值返回布尔值表示是否成功删除 返回布尔值查看该值是否存在与set 清除所有set成员不返回值
keys( ) values( ) entries( ) forEach( )
返回键名的遍历器 返回键值的遍历器 返回键值对的遍历器 使用回调遍历每一项
map( ) filter( )
遍历返回新数组 过滤筛选数值

Array.from 方法可以把Set结构转化为数组

var items = new Set([1, 2, 3, 4, 5]);
var array = Array.from(items);

去重方法

function ces(array) {
  return Array.from(new Set(array));
}
ces([......])
     //let arr = [1,2,2,3,4,3,6,5];
let unique = [...new Set(arr)];

遍历测试

//通用测试属性    
let set = new Set(['red', 'green', 'blue']);

//依次替换set属性测试
for (let item of set.keys()) {
  console.log(item);
}
//由于Set结构没有键名,只有键值(或者说键名和键值是同一个值),所以key方法和value方法的行为完全一致。

Set结构默认可遍历对象所以可以之间使用 for ... of 循环:recycle:遍历set

for (let x of set) {
  console.log(x);
}

//扩展运算符(...)内部使用for...of循环,所以也可以用于Set结构。
let arr = [...set];

如果想遍历的同时改变数组有两种方法可以选择

//map()
let set = new Set([1, 2, 3]);
set = new Set([...set].map(val => val * 2));
// set的值是2, 4, 6

//Array.from()
let set = new Set([1, 2, 3]);
set = new Set(Array.from(set, val => val * 2));
// set的值是2, 4, 6

初次拟写~不断更新添加笔记


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

编程珠玑(续)(修订版)

编程珠玑(续)(修订版)

【美】Jon Bentley 乔恩•本特利 / 钱丽艳、刘田 / 人民邮电出版社 / 2015-2 / CNY 35.00

历史上最伟大的计算机科学著作之一 融深邃思想、实战技术与趣味轶事于一炉的奇书 带你真正领略计算机科学之美 多年以来,当程序员们推选出最心爱的计算机图书时,《编程珠玑》总是位于前列。正如自然界里珍珠出自细沙对牡蛎的磨砺,计算机科学大师Jon Bentley以其独有的洞察力和创造力,从磨砺程序员的实际问题中凝结出一篇篇不朽的编程“珠玑”,成为世界计算机界名刊《ACM通讯》历史上最受欢......一起来看看 《编程珠玑(续)(修订版)》 这本书的介绍吧!

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码

MD5 加密
MD5 加密

MD5 加密工具