ES6+
MGsniper
MGsniper aka Vincent Atlas
展开
-
ES6+ | let的命名出处
文章目录引言let的由来附引言let 是 ES6引入的变量声明方式,由let声明的变量遵循“块级作用域”。为什么要将这种声明方式命名为let呢?var 对应 variable,const 对应 constant,let对应什么呢?let的由来根据查证,了解到,let是英文公式化推理证明的一种声明习惯,表示当前声明的变量仅在当前逻辑域中有效,类似于中文数学中的“当”/“设”,尽在当前问题中...原创 2019-03-14 14:38:41 · 1028 阅读 · 0 评论 -
ES6+ | 对象属性与方法简写
文章目录对象字面量简写属性简写方法简写注意应用坑点对象字面量在JavaScript中,对象字面量是创建对象是一种简洁方式,形式如下:let a = 3let obj = { a: a, b: 'b', func: function () { console.log(this.a,this.b) }}在ES6之前,对象字面量的属性与方法必...原创 2019-03-20 14:52:12 · 5164 阅读 · 0 评论 -
git | 关联本地仓库到远端
本文将解释Error in render: "TypeError: Cannot read property 'matched' of undefined"的原因及解决方法原创 2019-03-20 15:39:34 · 12228 阅读 · 7 评论 -
ES6+ | let/const 全局变量
文章目录历史回顾let/const历史回顾在ES6之前,我们使用var声明全局变量或隐式声明全局变量,则这些全局变量会自动成为全局对象(浏览器中,为window)的属性。let/const在ES6中,let/const声明的变量遵循块级作用域规则。而let/const声明的全局变量也与传统声明的全局变量有所区别。let/const声明的全局变量会保存在script的作用域内,也不会成为全...原创 2019-03-21 11:31:23 · 1666 阅读 · 0 评论 -
ES6+| promise.all特性与实用场景
文章目录前言返回顺序与完成时间rejected情况处理实际场景与改良前言Promise.all常用于处理多个并行的异步操作。Promise.all可接受一个可迭代对象,一般为Promise组成的数组,并在所有Promise都完成或遇到第一个rejected后返回结果。本文将通过实验,验证Promise.all的几个特性与实用场景下的优化本文依旧以setTimeout代表异步操作,实验涉及...原创 2019-05-31 10:29:48 · 1721 阅读 · 0 评论 -
ES6+ | promise.race特性与实用场景
文章目录前言特性实用场景前言本文将简单介绍promise.race的特性和简单的实用场景。(在网上看到过,使用promise.race请求有最大请求上线的接口,但这块个人没有相关实践,期待各位大佬补充)本文依然使用setTimeout代表异步操作,涉及的异步操作如下function httpAction(){ let p =new Promise(function(resolve,...原创 2019-05-31 10:40:12 · 3100 阅读 · 0 评论 -
ES6+ | promise正确的链式表达
文章目录前言错误的回调写法链式写法仓库前言使用promise进行异步操作的同步表达,可以解决过往使用回调函数导致的回调地狱。但是在实际场景下,有时候由于开发人员理解不深入,会错误地把promise写成回调的模样。本文以setTimeout代表异步操作,本质模拟的是多步连续调用HTTP服务的实际场景。let counter = 1;function asyncAction() { l...原创 2019-05-29 10:43:55 · 570 阅读 · 0 评论 -
ES6+ |ES6的数据去重
文章目录场景实现效率对比说明场景数组去重是一个极为常见的小需求场景。数组去重的方法有很多,但是最为简单也是性能最好的是使用ES6引入的SET数据结构与扩展运算符,但当所处需求场景不支持使用set时,可以使用对象属性名唯一的性质进行去重,这是时间复杂度第二低的方法。实现使用set实现,极为简单明了。使用对象属性名唯一,也并不复杂,参考代码如下:let arr = new Array(100...原创 2019-07-29 10:27:53 · 589 阅读 · 0 评论