Skip to content
导航

ES6

let、const

  • 块级作用域

`${}`

js
// 参数:strings, expression, ...
console.log`123` // ['123']
console.log`${1+2}${true}` // ['', '', ''] 3 true

字符串

  • String.fromCodePoint()
  • String.raw()
  • s.codePointAt()
    • "𠮷".length === 2
    • codePointAt()是测试一个字符由两个字节或四个字节组成的最简单方法。
  • s.normalize():处理欧洲语言音标格式化
  • s.include()、s.startsWith()、s.endsWith()
  • s.repeat()

正则

  • u修饰符,处理UTF-16编码
  • y修饰符,sticky,功能类似g修饰符,但从上一次匹配成功的下一位置开始
  • RegExp.prototype.flags,返回正则表达式的修饰符
    • ES5:RegExp.prototype.source,返回正则表达式的正文

数字

  • 0b二进制,0o八进制
  • Number.isFinite():检查数值不是Infinity
  • Number.isNaN()、Number.parseInt()、Number.parseFloat():原来是全局函数
  • Number.isInteger()
  • Number.EPSILON: 2^-52,JavaScript能够表示的最小精度
    • 0.1+0.2 !== 0.3
  • Number.MIN_SAFE_INTEGER、Number.MAX_SAFE_INTEGER、Number.isSafeInteger()
    • -2^532^53之间
  • Math扩展了数学方法
  • 函数

数组

  • Array.from()
  • Array.of():Array.of(1,2,3) == Array(1,2,3) == [1,2,3]
  • arr.copyWithin()
  • arr.find()、arr.findIndex()
  • arr.fill()
  • arr.entries()、arr.keys()、arr.values()

对象

  • 属性、方法简写
  • key表达式
  • Object.is(),与严格比较基本一致,不同的是+0!=-0NaN==NaN
  • Object.assign()
    • 遇到取值函数时,会进行求值
  • Object.setPrototypeOf(),Object.getPrototypeOf()
  • 解构赋值
    • 数组、字符串
    • 对象
    • 函数参数
    • 数字、布尔值:自动转为原型对象,再按对象解构
    • 剩余属性
      • 存储到新的对象或数组中
      • 必须是模式中的最后一个,并且不能有尾随逗号

class

  • constructor
    • new.target:返回new命令作用于的那个构造函数
  • static
  • getter/setter
  • extends
  • super
    • super():Parent.constructor()
    • super[key]:Parent[key]

ES模块

  • 自动采用严格模式
  • import
    • 自动提升到模块的头部
    • import 'mod'
    • import {a} from 'mod'
    • import * as mod from 'mod'
  • export
    • export var a = 1
    • export
    • export
    • export default
    • export {a} from 'mod'

数据结构

  • Set
    • WeakSet
  • Map
    • WeakMap
  • Symbol

Promise

  • then/catch
  • all
  • race
  • resolve/reject

fetch

js
fetch(url).then(handleRespose).catch(handleError)

迭代协议

  • 可迭代协议
  • 迭代器协议

for...of

  • 数据结构只要满足可迭代协议即可循环遍历
  • 内部调用[Symbol.iterator]方法

Generator

  • yield

Proxy、Reflect

参考资料