随笔分类 - ES6
ES6, 全称 ECMAScript 6.0 ,是 JavaScript 的下一个版本标准,2015.06 发版。
ES6 主要是为了解决 ES5 的先天不足,比如 JavaScript 里并没有类的概念,但是目前浏览器的 JavaScript 是 ES5 版本,大多数高版本的浏览器也支持 ES6,不过只实现了 ES6 的部分特性和功能。
摘要:1、概述 是异步编程的一种解决方案。 从语法上说,Promise 是一个对象,从它可以获取异步操作的消息。 其实是一个构造函数,自己身上有all、reject、resolve这几个方法,原型上有then、catch等方法。 2、Promise状态 三种状态::pending(进行中)、fulfill
阅读全文
摘要:1、特点: ES6 的模块自动开启严格模式,不管你有没有在模块头部加上 use strict;。 模块中可以导入和导出各种类型的变量,如函数,对象,字符串,数字,布尔值,类等。 每个模块都有自己的上下文,每一个模块内声明的变量都是局部变量,不会污染全局作用域。 每一个模块只加载一次(是单例的), 若
阅读全文
摘要:1、概述 在ES6中,class (类)作为对象的模板被引入,可以通过 class 关键字定义类。 class 的本质是 function。 它可以看作一个语法糖,让对象原型的写法更加清晰、更像面向对象编程的语法。 2、基础用法 1、类定义 // 匿名类 let Example = class {
阅读全文
摘要:1、默认参数 即形参已经设置参数的值,如果实参没有传入值,则会使用默认参数。例如下面的age=17就是默认参数。 function fn(name,age=17){ console.log(name+","+age); } fn("Amy",18); // Amy,18 fn("Amy","");
阅读全文
摘要:1、字符串 新增字符串识别方法: includes():返回布尔值,判断是否找到参数字符串。 startsWith():返回布尔值,判断参数字符串是否在原字符串的头部。 endsWith():返回布尔值,判断参数字符串是否在原字符串的尾部。 例子: let string = "apple,banan
阅读全文
摘要:1、Proxy(代理) Proxy 可以对目标对象的读取、函数调用等操作进行拦截,然后进行操作处理。它不直接操作对象,而是像代理模式,通过对象的代理对象进行操作,在进行这些操作时,可以添加一些需要的额外操作。 一个 Proxy 对象由两个部分组成: target 、 handler 。在通过 Pro
阅读全文
摘要:1、Map map和object的区别: 一个 Object 的键只能是字符串或者 Symbols,但一个 Map 的键可以是任意值。 Map 中的键值是有序的(FIFO 原则),而添加到对象中的键则不是。 Map 的键值对个数可以从 size 属性获取,而 Object 的键值对个数只能手动计算。
阅读全文
摘要:1、概述 ES6 引入了一种新的原始数据类型 Symbol ,表示独一无二的值,最大的用法是用来定义对象的唯一属性名。 ES6 数据类型除了 Number 、 String 、 Boolean 、 Object、 null 和 undefined ,还新增了 Symbol 。 2、基本用法 let
阅读全文
摘要:1、概述 解构赋值是对赋值运算符的扩展。 他是一种针对数组或者对象进行模式匹配,然后对其中的变量进行赋值。 在代码书写上简洁且易读,语义更加清晰明了;也方便了复杂对象中数据字段获取。 结构赋值由两部分构成:解构的源,解构赋值表达式的右边部分。解构的目标,解构赋值表达式的左边部分。 2、数组解构 //
阅读全文
摘要:es6之前,js中只有一个声明变量的关键字 var 。 es6之后,新增了let 和 cons两个关键字。 1、Let (1)、let 是在代码块内有效,var 是在全局范围内有效。很适合for循环中的i变量。 { let a = 0; var b = 1; } a // ReferenceErro
阅读全文

浙公网安备 33010602011771号