首页 > 其他 > 详细

ES6 学习笔记

时间:2020-05-26 17:49:15      阅读:43      评论:0      收藏:0      [点我收藏+]

1、let与const

  • let 声明的变量只在 let 命令所在的代码块内有效。只能声明一次;不存在变量提升
  • const 声明一个只读的常量,一旦声明,常量的值就不能改变。只能声明一次;不存在变量提升
  • var 是在全局范围内有效;var 可以声明多次;var 会变量提升:

2、解构赋值

  • 解构的源,解构赋值表达式的右边部分。
  • 解构的目标,解构赋值表达式的左边部分。
  • 技术分享图片

3、Symbol:新的原始数据类型,表示独一无二的值,最大的用法是用来定义对象的唯一属性名。

4、Map 与 Set

  • Maps 和 Objects 的区别
    • 一个 Object 的键只能是字符串或者 Symbols,但一个 Map 的键可以是任意值。
    • Map 中的键值是有序的(FIFO 原则),而添加到对象中的键则不是。
    • Map 的键值对个数可以从 size 属性获取,而 Object 的键值对个数只能手动计算。
    • Object 都有自己的原型,原型链上的键名有可能和你自己在对象上的设置的键名产生冲突。
  • Map 的迭代
    • for...of:entries();keys();values()
    • forEach()
  • Map 对象的操作
    • Map 与 Array的转换:Array.from(myMap)
    • Map 的克隆:new Map(myMap);
    • Map 的合并:new Map([...first, ...second]);
  • Set 对象:存储的值总是唯一的,所以需要判断两个值是否恒等
    • +0 与 -0 在存储判断唯一性的时候是恒等的,所以不重复;
    • undefined 与 undefined 是恒等的,所以不重复;
    • NaN 与 NaN 是不恒等的,但是在 Set 中只能存一个,不重复。
  • Set 对象作用
    • 数组去重
    • 并集
    • 交集
    • 差集

5、Reflect 与 Proxy:可以用于获取目标对象的行为

6、ES6 字符串

  • includes():返回布尔值,判断是否找到参数字符串。
  • startsWith():返回布尔值,判断参数字符串是否在原字符串的头部。
  • endsWith():返回布尔值,判断参数字符串是否在原字符串的尾部。
  • repeat():返回新的字符串,表示将字符串重复指定次数返回。
  • padStart:返回新的字符串,表示用参数字符串从头部(左侧)补全原字符串。
  • padEnd:返回新的字符串,表示用参数字符串从尾部(右侧)补全原字符串。
  • 模板字符串:`

7、数值

  • 二进制表示法新写法: 前缀 0b 或 0B 。
  • 八进制表示法新写法: 前缀 0o 或 0O 。
  • 常量:Number.EPSILON:表示 1 与大于 1 的最小浮点数之间的差。它的值接近于 2.2204460492503130808472633361816E-16,或者 2-52。测试数值是否在误差范围内
  • Number 对象新方法
    • Number.isFinite():用于检查一个数值是否为有限的( finite ),即不是 Infinity
    • Number.parseInt():用于将给定字符串转化为指定进制的整数。
  • Math 对象的扩展
    • 普通计算
    • 数字处理
    • 判断
    • 对数方法
    • 双曲函数方法
    • 指数运算符

 8、对象

  • 属性的简洁表示法
  • 属性名表达式:ES6允许用表达式作为属性名,但是一定要将表达式放在方括号内。
  • 拓展运算符(...)用于取出参数对象所有可遍历属性然后拷贝到当前对象。
    • 可用于合并两个对象
    • 自定义的属性和拓展运算符对象里面属性的相同的时候:自定义的属性在拓展运算符后面,则拓展运算符对象内部同名的属性将被覆盖掉
  • 对象的新方法
    • Object.assign(target, source_1, ···):用于将源对象的所有可枚举属性复制到目标对象中。assign 的属性拷贝是浅拷贝:
    • Object.is(value1, value2):用来比较两个值是否严格相等,与(===)基本类似。

9、数组

  • Array.of():将参数中所有值作为元素形成数组。
  • Array.from():将类数组对象或可迭代对象转化为数组。类数组对象:一个类数组对象必须含有 length 属性,且元素属性名必须是数值或者可转换为数值的字符。
  • find():查找数组中符合条件的元素,若有多个符合条件的元素,则返回第一个元素。
  • findIndex():查找数组中符合条件的元素索引,若有多个符合条件的元素,则返回第一个元素索引。
  • fill():将一定范围索引的数组元素内容填充为单个指定的值。
  • copyWithin():将一定范围索引的数组元素修改为此数组另一指定范围索引的元素。
  • entries():遍历键值对。
  • keys():遍历键名
  • values():遍历键值。
  • includes():数组是否包含指定值。
  • flat():嵌套数组转一维数组
  • flatMap():先对数组中每个元素进行了的处理,再对数组执行 flat() 方法。

10、 函数

  • 函数参数的扩展:function fn(arg1,arg2=value)
  • 不定参数用来表示不确定参数个数,形如,...变量名,由...加上一个具名参数标识符组成。具名参数只能放在参数组的最后,并且有且只有一个不定参数。
  • 箭头函数提供了一种更加简洁的函数书写方式

11、迭代器

12、Class 类

13、模块

14、Promise 对象

15、Generator 函数

16、async 函数

 

ES6 学习笔记

原文:https://www.cnblogs.com/leehuilin/p/12966379.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!