ECMAScript6 So Easy
文章平均质量分 84
ECMAScript 6 目前基本成为业界标准,它的普及速度比 ES5 要快很多,主要原因是现代浏览器对 ES6 的支持相当迅速,尤其是 Chrome 和 Firefox 浏览器,已经支持 ES6 中绝大多数的特性。 本专栏用来记录 ES6。
一碗周.
这个作者很懒,什么都没留下…
展开
-
ES新特性之Reflect对象
大家好,我是一碗周,一个不想被喝(内卷)的前端。如果写的文章有幸可以得到你的青睐,万分有幸~概述Reflect是ECMAScript2015提供的一个对象,它提供了一些拦截JavaScript操作的静态方法,这些方法与Proxy中的handlers中的方法一致。Reflect并不是一个构造函数,也就是说它不能够被实例化。Proxy对象中的每一个拦截操作(例如:get、delete等),内部都对应的调用了Reflect的方法。它提供的静态方法与Proxy中的handlers中的方法名称都一致,具体.原创 2021-12-15 20:17:17 · 1384 阅读 · 0 评论 -
ES新特性之Proxy对象
大家好,我是一碗周,一个不想被喝(内卷)的前端。如果写的文章有幸可以得到你的青睐,万分有幸~概述在ES2015的标准中新增了一个Proxy,用于修改某些操作的默认行为,等同于在语言层面作出的修改,所以说这是属于一种元编程 ,(meta programming),即对编程语言进行编程。Proxy对象用于创建一个对象的“代理”,从而实现基本能操作的拦截和自定义(如属性查找、赋值、枚举、函数调用等)。通俗一点的解释就是,房子比作原始对象,中介比作Proxy,我们租房可以直接找原始房源,也可以通过中介.原创 2021-12-15 20:16:20 · 1652 阅读 · 0 评论 -
ES新特性之class关键字
大家好,我是一碗周,一个不想被喝(内卷)的前端。如果写的文章有幸可以得到你的青睐,万分有幸~类的声明类是什么ECMAScript6提供了更接近传统开发语言的手法,引入了类(Class)的概念。类作为对象的模板,在JavaScript中只是一个语法糖。class关键字只是让对象原型的写法更加清晰、更像面向对象编程的语法而已。示例代码如下:// ES 5 中定义对象的方式// 定义一个构造函数const Hero1 = function () { this.name = 'ywanzho.原创 2021-12-15 20:15:21 · 351 阅读 · 0 评论 -
ES新特性之对象的扩展
大家好,我是一碗周,一个不想被喝(内卷)的前端。如果写的文章有幸可以得到你的青睐,万分有幸~对象(object)是JavaScript最重要的数据结构。ECMAScript 2015对它进行了重大升级,下面我们来看一下它的改变对象的属性属性表示法ECMAScript 2015允许在大括号里面,直接写入变量和函数,作为对象的属性和方法。这样的书写更加简洁。示例代码如下所示:let name = '一碗周'let job = '前端攻城狮'// 属性表示法 直接写入变量let obj1 .原创 2021-12-14 15:57:32 · 141 阅读 · 0 评论 -
ES新特性之函数的扩展
大家好,我是一碗周,一个不想被喝(内卷)的前端。如果写的文章有幸可以得到你的青睐,万分有幸~函数参数的默认值函数参数指定默认值在ECMAScript 2015中,允许为函数的参数添加默认值,将默认值直接写在参数的后面即可。示例代码如下所示:// 函数参数指定默认值function fun(a = 1, b = 2) { console.log(a + b);}fun() // 3值得注意的是:参数变量是默认声明的,所以不能用let或const再次声明, 否则会抛出异常。还有就是默.原创 2021-12-14 15:56:42 · 109 阅读 · 0 评论 -
ES新特性之扩展运算符
大家好,我是一碗周,一个不想被喝(内卷)的前端。如果写的文章有幸可以得到你的青睐,万分有幸~扩展运算符扩展运算符是三个点... , 允许将一个表达式原地展开,当需要多个参数(比如函数的调用时) 或者多个值(比如数组)它会将其转为用逗号分隔的参数序列。示例代码如下所示:// 定义一个数组let arr = [1, 2, 3, 4, 5, 6]// 使用 ... 扩展运算符展开console.log(...arr); // 1 2 3 4 5 6// 定义一个函数function fun.原创 2021-12-14 15:55:20 · 364 阅读 · 0 评论 -
ES新特性之模板字符串
大家好,我是一碗周,一个不想被喝(内卷)的前端。如果写的文章有幸可以得到你的青睐,万分有幸~模板字符串是什么模板字符串( Template String )是增强版的字符串,使用反引号(```)来代替谱通字符串中的用双引号和单引号。它可以当作普通字符串使用,也可以用来定义多行字符串,或者在字符串中嵌入变量。普通用法如下所示:// 使用 ` 符号包裹的字符串称为模板字符串let str = `this is str`console.log(typeof str, str); //string.原创 2021-12-14 15:46:50 · 484 阅读 · 0 评论 -
ES新特性之变量的解耦赋值
大家好,我是一碗周,一个不想被喝(内卷)的前端。如果写的文章有幸可以得到你的青睐,万分有幸~数组的解耦赋值数组解耦赋值是什么ECMAScript 2015中允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为 解耦赋值 。在ECMAScript 2015之前中为变量赋值的方式如下所示:let a = 1;let b = 2;let c = 3;在ECMAScript 2015允许写成下面这样。let [a, b, c] = [1, 2, 3];ECMAScript 2.原创 2021-12-14 15:39:20 · 210 阅读 · 0 评论 -
ES新特性之let与const关键字
大家好,我是一碗周,一个不想被喝(内卷)的前端。如果写的文章有幸可以得到你的青睐,万分有幸~let关键字基本用法let是ECMAScript 2015新增的一个关键字,用于声明变量,其用法类似于var,与之不同的是声明的变量只能在所在的代码块中使用。语法结构如下所示:let var1 [= value1] [, var2 [= value2]] [, ..., varN [= valueN]];参数说明:var1, var2, …, varN:变量名。必须是合法的标识符。val.原创 2021-12-14 15:27:05 · 383 阅读 · 0 评论 -
ES新特性之块级作用域
大家好,我是一碗周,一个不想被喝(内卷)的前端。如果写的文章有幸可以得到你的青睐,万分有幸~在学习块级作用域之前需要我们对作用域有个了解,所谓的作用域就是代码当中的某个成员起作用的范围。块级作用域是什么所谓的块级作用域,就是该变量只能在声明时的代码块或者子代码块中使用。在ECMAScript 2015以前的版本中是不存在块级作用域的,而ECMAScript 2015提供的let关键字,使JavaScript出现了块级作用域,示例代码如下所示/* * 块级作用域只能使用 let 关键字 * l.原创 2021-12-14 15:38:13 · 129 阅读 · 0 评论 -
JavaScript中的for...of循环与迭代器是什么
theme: fancy小知识,大挑战!本文正在参与“程序员必备小知识”创作活动。大家好,我是一碗周,一个不想被喝(内卷)的前端。如果写的文章有幸可以得到你的青睐,万分有幸~写在前面ECMAScript新增的for...of循环,它可以遍历任何一个可迭代的对象,本篇文章将围绕for...of循环与迭代器展开,大致包括以下内容:for…of循环ECMAScript新增的for...of循环语句用于遍历一个可迭代对象 ,可迭代对象包括Array、Map、Set、String、TypeArra.原创 2021-12-07 11:15:35 · 325 阅读 · 0 评论 -
Symbol类型有什么用?怎么用?
大家好,我是一碗周,一个不想被喝(内卷)的前端。如果写的文章有幸可以得到你的青睐,万分有幸~写在前面Symbol是JavaScript中提供的第七种数据类型 ,前面六种分别是string、number、boolean、null、undefined和广义的Object,在ECMAScript2020的时候引入了第八种数据类型,即BigInt。Symbol类型的出现帮助了我们即将属性命名冲突的问题,通过这篇文章我们来学习一下这个数据类型。Symbol的语法基础语法Symbol的语法比较简单,就是.原创 2021-12-07 11:14:18 · 454 阅读 · 0 评论