第二季第十天 es6新特性新特性

1.set的应用(去重)js标准内置对象

适用范围:String,Array(数字基本数据类型不可以)

set的方法:例子 var s = new Set(data)

  • 增加:  s.add(data)    和Array.push()一样
  • 长度: s.size    和Array.length一样
  • 删除: s.delete(data)
  • 判断: s.has(data) 和Array.includes()一样

作用:去重,并且返回一个set特定的数据格式

转化格式:set和nodeList(queryselectorAll)都是看起来像数组的数据

var a = Array.from(data) 可以将其转化为真正的数组(此方法可以把类数组转化为数组,浅拷贝)


2.let与const

  • let与const都只能声明一个变量一次(不能重复声明)
  • let和const的作用域只在花括号内(块级作用域)
for (let i = 0; i < 3; i++) { log(i) } log(i) // 结果是 undefined
  • const声明一个不可被赋值的变量(声明一个不希望被任何人修改的变量)
const a = 3
a = 4 // 报错  不能被修改

let a = 3
a = 4 //不报错

3.js标准内置对象Map

定义Map 对象保存键值对。任何值(对象或者原始值) 都可以作为一个键或一个值。

区别:和Object的区别就是它的key不必必须是字符串。可以是任何值

方法:var a = new Map()

  • 增加 s.set("name", "zhang")  和object.name = "zhang"一样
  • 拿到值  s.get("name")  和object.name一样

4.扩展符号(...传参数) 5数组解包

var a = [1, 2, 3]
log(...a)
// 1 2 3  可以把数组解开成单独元素

// 一行代码 多个赋值
var [a, b] = [1, 2]
// 一行代码交换变量值
[a, b] = [b, a]

//数组解包加上扩展符号
 [a,...b] =[1,2,3,4,5] 

//传参用上扩展符号
function c(a, ...b) {}
c(1,2,3,4,4)
//a = 1 b = [2,3,4,4]

6.对象解包

var obj = {name:"1",score:"2"}

var {name,score} = obj
//后面就可以访问到 name和score

对象增强模式

name = "zhang "
var a = {name}//当要赋值的key与外界的变量重名,可以省略velue值

7.默认参数值,可变参数传值

//传参用上扩展符号
function c(a, ...b) {}
c(1,2,3,4,4)
//a = 1 b = [2,3,4,4]

8.箭头函数

(参数)=>{语句}

9.新增方法includes

10.新增遍历方式

原文地址:https://www.cnblogs.com/-constructor/p/11747065.html

时间: 2024-08-29 23:53:41

第二季第十天 es6新特性新特性的相关文章

安全基础教育第二季第1集:屡战屡败的找回密码

郑昀 创建于2015/5/19 最后更新于2015/8/7 关键词: Web安全.系统安全.Web开发.找回密码.重置密码 本文档适用人员:广义的技术人员 提纲: 堡垒是从内部攻破的 员工无知者无畏 运维配置暴露细节 后台不设防 常犯常新,屡战屡败 找回密码 图形和短信验证码 平行权限 MD5等于明文 处处留心皆学问 表单被篡改 App被篡改 跨站请求伪造 0x00. 前言: 第一季培训主要宣导两点,第一,白帽子或黑客都很有耐心,他手里可能捏着你多个漏洞,他一直在等机会,他也有很多工具在扫在寻找

ES6 有什么新东西

ES6 有什么新东西? 你可能已经听说过 ECMAScript 6 (简称 ES6)了.ES6 是 Javascript 的下一个版本,它有很多很棒的新特性.这些特性复杂程度各不相同,但对于简单的脚本和复杂的应用都很有用.在本文中,我们将讨论一些精心挑选的 ES6 特性,这些特性可以用于你日常的 Javascript 编码中. 请注意,当前浏览器已经全面展开对这些 ES6 新特性的支持,尽管目前的支持程度还有所差异.如果你需要支持一些缺少很多 ES6 特性的旧版浏览器,我将介绍一些当前可以帮助你

Atitit.mysql&#160;5.0&#160;5.5&#160;&#160;5.6&#160;5.7&#160;&#160;新特性&#160;新功能

Atitit.mysql 5.0 5.5  5.6 5.7  新特性 新功能 1. MySQL  5.6    5 大新特性1 1.1. 优化器的改进1 1.2. InnoDB 改进1 1.3. 使用 memcached API 直接访问 NoSQL2 1.4. 更好的复制2 1.5. Performance Schema2 2. MySQL 5.7.62 2.1. 内建中文全文索引2 2.2. 多主复制2 2.3. other2 3. 参考2 1. MySQL  5.6    5 大新特性 M

《欢乐颂》第二季来袭:程序员救美,邱莹莹终于找到靠谱男

<欢乐颂>前不久刚迎来大结局,大家就马上开始期待第二季了.都市剧那么多,却独独火了它.也许这部剧成功之处就在于它真实,因为大部分人都能从剧中找到现在或是曾经的自己. 现实生活中,我们大多都是像邱莹莹这样的普通人,羡慕曲筱绡,梦想做安迪,一直像关雎尔一样拼命努力,最后发现只是比樊胜美过得好一些.很多人讨厌邱莹莹的无知和冲动,但看到最后却发现,她虽然被公司辞退,却通过自己的网购经验,误打误撞把咖啡厅的工作做的有声有色. 你以为到这里,邱莹莹迎来了完美结局,故事就要结束了吗?NONONO,有一种故事

第二季来袭:奶茶妹妹都用Lync开会了,你们一定要知道的Lync会议的秘密噢~

大家对第一季的关注促使我继续编写第二季,感觉有点像美剧,收视率高我们就继续,哈哈~~写点啥,Lync内容太多了,最近听说奶茶妹妹入职微软了都在使用Lync开会了,那我们就一起谈谈Lync会议的秘密吧! 秘密1:你可以通过视频看到奶茶妹妹噢,还可以设置为重点关注对象. 从Lync 2013开始我们可以支持高清视频了哈,用户在会议过程中视频分辨率最高能够达到1080P级别,也就是1920 x 1080的全高清分辨率噢.另外,在Lync 2013我们可以支持多路视频,可以同时展示5个发言者的视频,并可

Atitit.mysql 5.0 5.5 &#160;5.6 5.7 &#160;新特性 新功能

Atitit.mysql 5.0 5.5  5.6 5.7  新特性 新功能 1. MySQL  5.6    5 大新特性1 1.1. 优化器的改进1 1.2. InnoDB 改进1 1.3. 使用 memcached API 直接访问 NoSQL2 1.4. 更好的复制2 1.5. Performance Schema2 2. MySQL 5.7.62 2.1. 内建中文全文索引2 2.2. 多主复制2 2.3. other2 3. 参考2 1. MySQL  5.6    5 大新特性 M

OSChina 周二乱弹 —— 我容易吗我第二季

9月1日,一不小心又是新的一个月,各位OSCer大家壕.昨天是开源中国七周年生日,收到OSCer一大波的祝福,小小编一激动,又要发福利了,不过,请大家先拨打120叫好救护车再往下看: @twosnail:开源中国 7 周年纪念日 @change_solider:OSC 生日快乐! @青木河:OSC 生日快乐!希望我兰每天都快乐!希望红薯每天都自恋!希望菲姨依然热门!希望李博文继续臭不要脸! @翻墙攻城势:今天是:开源中国 7 周年纪念日 有什么用, 就是有福利啊!真空美人鱼- @小小编辑:在大角

一起做RGB-D SLAM 第二季 (一)

小萝卜:师兄!过年啦!是不是很无聊啊!普通人的生活就是赚钱花钱,实在是很没意思啊! 师兄:是啊…… 小萝卜:他们都不懂搞科研和码代码的乐趣呀! 师兄:可不是嘛…… 小萝卜:所以今年过年,我们再做一个SLAM吧!之前写的那个太烂了啦,我都不好意思说是我做的了! 师兄:嗯那可真是对不住你啊…… 小萝卜:没事!你再写一个好一点的,我就原谅你了!写完再请我吃饭吧! 师兄:啊,好的…… 小萝卜:师兄你别这么没精神啊!加油咯! 前言 在经过了一番激烈的思想斗争之后呢,师兄厌倦了年假的无聊生活,开始写<一起做

2015年5月9日公开课第二季—《自动化运维平台的设计理念》

朋友们,随着我们上期公开课的成功举办,马哥linux运维为了给大家分享更多的干货,我们将于2015年5月9日进行公开课第二季,本季公开课将由magedu-comyn老师为大家进行分享! 运维即将迈入2.0时代,越来越追求平台化,自动化,工具化等多元化的整合,相应的,对运维的要求在慢慢的提升,知名互联网公司中,devops已经成为一种新趋势,新的职业,在未来的运维职业中,自动化运维程度要求将会更高,comyn大神的运维自动化框架,已经成熟的运用于多家互联网公司中,标准化流程化自动化,极大的提高了运