es6的基本数据详解
1 2 3 |
var s = new Set(); [2,3,5,4,5,2,2].map(x =>s.add(x)); for(i of s){console.log(i)} |
1 2 |
var set = new Set([1,2,3,4,4]); console.log([...set]); |
1 2 3 4 |
let set =new Set(); set.add({}); set.add({}); console.log(set.size); //输出值为2 |
- Set.prototype.constructor:构造函数,默认就是Set函数
- Set.prototype.size:返回Set实例的成员总数
- add(value):添加某个值,返回Set结构本身。
- delete(value):删除某个值,返回一个布尔值,表示删除是否成功。
- has( value):返回一个布尔值,表示参数是否为Set成员。
- clear( ):清除所有成员,没有返回值。
1 2 3 4 5 6 7 8 |
var s= new Set(); s.add(1).add(2).add(2); console.log("s.size:"+s.size); console.log(s.has(1));//true console.log(s.has(2));//true console.log(s.has(3));//false s.delete(2);//删除2的成员 console.log(s.has(2));//false |
1 2 3 |
var items = new Set([1,2,3,4,5]); var array = Array.from(items); console.log(array); |
1 2 3 4 |
function dedupe(array){ return Array.from(new Set(array)); } console.log(dedupe([1,2,3,3])); |
- keys( ):返回一个键名的遍历器
- values( ):返回一个键值的遍历器
- entries( ):返回一个键值对的遍历器
- forEach( ):使用回调函数遍历每个成员。
1 2 3 4 5 6 7 8 9 10 11 12 |
let set = new Set(['red','green','blue']); for ( let item of set.keys()){ console.log(item); } for(let item of set.values()){ for( let item of set.entries()){ |
1 2 |
Set.prototype[Symbol.iterator]===Set.prototype.values; //true |
1 2 3 4 5 |
let set=new Set(['red','green','blue']); for(let x of set) { console.log(x); } |
1 2 3 |
let set = new Set(['red','green','blue']); let arr = [...set]; console.log(arr); |
1 2 3 |
let arr=[3,5,2,2,5,5]; let unique=[...new Set(arr)]; console.log(unique); |
1 2 3 4 5 |
var ws = new WeakSet(); ws.add(1); //TypeError:Invalid value used in weak set ws.add(Symbol()); //TypeError:Invalid value used in weak set |
1 2 3 |
var a = [[1,2],[3,4]]; var ws = new WeakSet(a); console.log(ws); |
- WeakSet.prototype.add(value):向WeakSet实例添加一个新成员。
- WeakSet.prototype.delete(value):清除WeakSet实例的指定成员。
- WeakSet.prototype.has(value);返回一个布尔值,表示某个值是否在WeakSet实例中。
1 2 3 4 5 6 7 8 9 |
var ws = new WeakSet(); var obj = {}; var foo = {}; ws.add(window); ws.add(obj); console.log(ws.has(window));//true console.log(ws.has(foo));//false ws.delete(window); console.log(ws.has(window))//false |
es6的基本数据详解的更多相关文章
- JavaScript ES6 新特性详解
JavaScript ES6 带来了新的语法和新的强大功能,使您的代码更现代,更易读 const , let and var 的区别: const , let 是 ES6 中用于声明变量的新关键字. ...
- es6入门4--promise详解
可以说每个前端开发者都无法避免解决异步问题,尤其是当处理了某个异步调用A后,又要紧接着处理其它逻辑,而最直观的做法就是通过回调函数(当然事件派发也可以)处理,比如: 请求A(function (请求响 ...
- Es6 Promise 用法详解
Promise是什么?? 打印出来看看 console.dir(Promise) 这么一看就明白了,Promise是一个构造函数,自己身上有all.reject.resolve这几个眼熟的方 ...
- es6 Proxy对象详解
Proxy用于修改某些操作的默认行为,也可以理解为在目标对象之前架设一层拦截,外部所有的访问都必须先通过这层拦截,因此提供了一种机制,可以对外部的访问进行过滤和修改.这个词的原理为代理,在这里可以表示 ...
- es6 Reflect对象详解
Reflect是ES6为操作对象而提供的新API,而这个API设计的目的只要有: 将Object对象的一些属于语言内部的方法放到Reflect对象上,从Reflect上能拿到语言内部的方法.如:Obj ...
- es6实现继承详解
ES6中通过class关键字,定义类 class Parent { constructor(name,age){ this.name = name; this.age = age; } speakSo ...
- ES6 中 Promise 详解
Promise,简单说就是一个容器,里面保存着某个未来才会结束的事件(通常是一个异步操作)的结果.从语法上说,Promise 是一个对象,从它可以获取异步操作的消息.Promise 提供统一的 API ...
- ES6中Promise详解
Promise,简单说就是一个容器,里面保存着某个未来才会结束的事件(通常是一个异步操作)的结果.从语法上说,Promise 是一个对象,从它可以获取异步操作的消息. Promise 提供统一的 AP ...
- ES6 Promise用法详解
What is Promise? Promise是一个构造函数,接受一个参数(Function),并且该参数接受两个参数resolve和reject(分别表示异步操作执行成功后的回调函数.执行失败后的 ...
随机推荐
- Android Studio安装后配置默认新工程目录以及.gradle,.android,.m2和system,config目录
关于在哪里设置:以下所有设置都是在没有打开工程的前提下设置的, Configure > Settings 如图: 不要使用 Configure > Project Defaults> ...
- nb-iot简介【转】
转自:http://www.elecfans.com/tags/nb-iot/ 标签 > nb-iot nb-iot 关注 118人关注 提供NB-IoT技术特点,NB-IoT模块/芯片,NB- ...
- 使用scrapy爬虫,爬取17k小说网的案例-方法一
无意间看到17小说网里面有一些小说小故事,于是决定用爬虫爬取下来自己看着玩,下图这个页面就是要爬取的来源. a 这个页面一共有125个标题,每个标题里面对应一个内容,如下图所示 下面直接看最核心spi ...
- codeforces 343D 树剖后odt维护
子树修改+路径修改+单点查询 树链剖分+区间维护即可 由于只有单点查询,我直接用了odt,复杂度还行 #include<bits/stdc++.h> #define endl '\n' # ...
- 【easy】438.Find All Anagrams in a String 找出字符串中所有的变位词
Input: s: "abab" p: "ab" Output: [0, 1, 2] Explanation: The substring with start ...
- pwnable.tw dubblesort
(留坑,远程没打成功) int __cdecl main(int argc, const char **argv, const char **envp) { int t_num_count; // e ...
- C# Bitmap生成base64码
public static string ImgToBase64String(Bitmap bmp) { try { MemoryStream ms = new MemoryStream(); bmp ...
- 基于用户的协同过滤电影推荐user-CF python
协同过滤包括基于物品的协同过滤和基于用户的协同过滤,本文基于电影评分数据做基于用户的推荐 主要做三个部分:1.读取数据:2.构建用户与用户的相似度矩阵:3.进行推荐: 查看数据u.data 主要用到前 ...
- fidller判断只抓固定host
设置好,填入对应的host,操作-立即运行过滤设置 效果
- Windbg分析蓝屏Dump文件
一.WinDbg是什么?它能做什么? WinDbg是在windows平台下,强大的用户态和内核态调试工具.它能够通过dmp文件轻松的定位到问题根源,可用于分析蓝屏.程序崩溃(IE崩溃)原因,是我们日常 ...