🌈ES6🌈
文章平均质量分 54
ES6笔记分享
NO x ONE
喜欢唱、跳、Rap、篮球,但不喜欢写代码的码农
展开
-
11.新增class
1.1 class特性本质上是一个默认严格模式不存在提升行为属性是class关键字后面的类名内部表示Generator函数在类中的方法都会定义在上面类的this默认指向类实例,但是单独抽离出来会出现错误改进2.Class静态方法在一个方法前加上关键字时,会定义方法在类上而非原型上,称为,即在static静态方法中,,同时静态方法名可以与非静态方法名重名可以通过关键字访问父类,以访问到父类中的静态方法3.Class实例、原型、静态属性方法定义不多bb了,直接上代码4.静原创 2022-06-30 14:33:33 · 572 阅读 · 0 评论 -
10.Async异步函数
asnyc函数实际上是+的语法糖上述代码修改成async函数2.基本用法async函数返回一个对象,可以使用then方法进行回调。当函数执行遇到await就会先返回,等异步操作完成后,在接着执行函数体后面的语句3.async声明方式4.async本质上是Promiseasync函数结束return的参数会封装成为一个,状态为,因为同理,throw抛出错误会返回一个,状态为返回的Promise对象,必须等到await命令后面的Promise对象执行完,才会发生状态改变,意味着必须等到原创 2022-06-30 11:30:01 · 878 阅读 · 0 评论 -
9.新增类型Map
结构类似对象即的集合,但是键不光可以是String型,还可以是其他类型。对于Object结构来说是,对于Map结构来说是,且与Set一直键名具有new的同时,添加键值对,实际上,每个定义了,且每个项都是的数据结构都可以作为Map构造函数的参数当键是object类型时要注意指针问题,这是一个大坑遍历操作............原创 2022-06-30 10:40:34 · 228 阅读 · 0 评论 -
8.新增类型Set
是一种数据结构,类似于数组,但是项(对于对象来说是喔~)都是的,可用于,属性: 返回Set实例的项数示例如下:遍历操作示例如下Set函数可以接收一个数组或者具有接口的其他数据结构作为参数,用来初始化,放进set结构里数组去重和字符串去重遍历操作由于Set结构键名和键值是同一个值(这样能实现值的唯一性,我菜的),故keys和values方法行为一致Set结构默认遍历器生成函数就是它的方法,即:......原创 2022-06-30 10:06:59 · 212 阅读 · 0 评论 -
7.新增类型Symbol
是ES6新增的数据类型,由Symbol函数生成,表示的值,属于,通常用于定义属性名,以保证不与其他属性名产生冲突创建Symbol时,传入的参数会成为它的属性2.Symbol属性读写Symbol类型作为属性读写需要使用形如的方式访问时不能通过点运算符通过Symbol类型可以定义一组常量,以保证唯一性3.Symbol属性遍历Symbol属性只能通过方法遍历,不能被、、、、遍历读取另外,可以返回包含和的数组利用symbol属性名不能被常规方法遍历到的这一特性,可以将定义私有的属性5.Sym原创 2022-06-30 00:04:06 · 233 阅读 · 0 评论 -
6.Object扩展
ES6允许在括号里直接写入变量和函数,作为对象的属性和方法(说白了就是同名简写)简写应用场景2. super 关键字super指向当前对象的原型,相当于注意:需要babel转译,浏览器目前还识别不出super关键字,且只能用在对象方法中喔,对象属性中使用会报错!4.assign用于对象合并,将源对象的所有可枚举属性复制到目标对象5.keys返回由可枚举组成的数组6.values、entries、fromEntries下面是汇总:用法:......原创 2022-06-29 20:51:24 · 75 阅读 · 0 评论 -
5.Array扩展
这里只介绍常用到的ES6数组扩展运算操作符可以将数组解绑操作符的其他应用①克隆数组②合并数组③同解耦结合④字符串转数组2.Array.from()用于将伪数组转换为真数组,所谓伪数组满足两个基本条件:将伪数组转化为真数组示例如下:只要是部署了接口的数据结构,Array.from都能将其转为数组,如字符串、Set结构对象满足伪数组条件,也可以通过Array.from转为数组Array.from还可以传入回调函数作为第二个参数,会对每个项进行map遍历操作,示例如下:3.Array.of原创 2022-06-29 20:19:00 · 99 阅读 · 0 评论 -
4.Function扩展
函数定义时,可以指定默认参数,在未传入参数或参数为时,会使用默认的参数但是要小心,参数变量是默认声明的,不能用let或const再次声明,因为其中调用时会发生,即惰性求值指定了默认值后,函数的属性会失真,因为length属性含义为函数预期传入的参数个数2.rest参数rest参数形式为,会将获取函数的多余参数并将其放进数组中3.name属性函数的name属性返回该函数的函数名☆4.箭头函数4.1 箭头函数特征箭头函数是ES6对函数进行的最大扩展若直接返回一个对象有必要时需要加个原创 2022-06-29 14:49:48 · 173 阅读 · 0 评论 -
3.String扩展
ES6对String类型作了一些扩展,本文主要介绍最重要的两个ES6引入了模板字符串,可以在里面插入数据,从而避免了字符串的繁杂操作。没有模板字符串之前,一些功能写起来很机车:现在引入模板字符串,明显舒适多了~在模板中也可以调用函数也可以这样花式调用2.扩展方法ES6对String的原型上进行了方法扩展,以下是常用的:......原创 2022-06-29 10:54:45 · 75 阅读 · 0 评论 -
2.解构赋值
从数组和对象中提取值,对变量进行赋值,称为1.2 花里胡哨解构(看看就行)1.3 解构允许默认值,若位置无值(),默认值会替代2. Object解构2.1 属性解构2.2 方法解构2.3 变量可以与要解构的属性不同名其实之前的例子里的变量要与解构的属性同名是因为也就是说,对象的解构赋值的内部机制,是。真正被赋值的是后者,而非前者2.4 花里胡哨解构(看看就行)对象的解构赋值可以取到继承的属性2.5 解构默认值3.String的解构 (看看就行)解构赋值的规则是,只要原创 2022-06-29 00:54:24 · 169 阅读 · 0 评论 -
1.let和const关键字
不多bb,直接上代码:for循环很适合使用let分析:1.2 let不存在变量提升1.3 let声明的变量会存在暂时性死区let声明的变量会绑定当前的作用域,不再受外部的影响,且在当前区域锁死let声明之前的变量访问当然,也有隐形的死区1.4 let不允许重复声明不多bb,直接上代码:2. constconst与let类似,只不过更加严格:在本质上,const保证的是,但是改变指针所指的对象的属性是可以的喔~如果要定义一个"常量对象",那么要使用,效果相当于将对象的每个属性cons原创 2022-06-29 00:45:38 · 103 阅读 · 0 评论