qq20004604的博客

github.com/qq20004604

排序:
默认
按更新时间
按访问量
RSS订阅

三十分钟熟悉es6(es6日常使用功能总结)

1、前注本文是对es6的小结,关于详细说明可以参照我的系列文章es6 从入门到熟练,或者阮一峰的ECMAScript 6 入门。我的系列文章是在阮一峰对应文章的基础上,增加更多适合初中级开发者的内容(包括代码和解释),降低学习难度。本文是在以上基础上,结合我本人实际开发经验,对es6整体的一个小结...

2017-09-17 23:32:34

阅读数 877

评论数 0

从零开始学_JavaScript_系列(68)——es6模块的使用

1、es6模块用于浏览器中标准写法是:<script type="module"> console.log('module') </script>按照预期效果是会非堵塞加载,然后再执行。事实上是里面的代码根本不会执行。又比如说:<scrip...

2017-09-17 23:05:19

阅读数 1190

评论数 0

从零开始学_JavaScript_系列(67)——es6的import和export(chrome61版本后可用)

import和export

2017-09-13 09:03:50

阅读数 2607

评论数 0

从零开始学_JavaScript_系列(66)——AMD、CMD、CommonJS

AMD、CMD、CommonJS

2017-09-11 08:55:34

阅读数 439

评论数 0

从零开始学_JavaScript_系列(65)——class的继承(2)super、extends与多重继承

4、super关键字4.1、作为函数时使用当super作为函数时使用,非常简单。 只允许在子类的构造函数中调用; 并且需要在调用this之前调用; 而且必须调用一次(除非你省略掉子类的构造函数); 如果不符合以上要求,那么就会报错,以下是标准写法class Foo { }class Bar ext...

2017-09-08 14:12:14

阅读数 732

评论数 0

从零开始学_JavaScript_系列(64)——class的继承(1)基本概念、继承构造函数和class

1、class继承概述1.1、所谓继承继承这个概念还需要解释么?好吧,我解释一下:简单粗暴的解释继承,就是指: 我定义一个类A,他自带一些方法; 然后我定义一个类B,他有一些方法是独特的,但他还有一些方法是类A已有的,那么如果让类B再重复定义这些类A已有的方法,显然是低效的写法; 这种让类B可以使...

2017-09-08 14:11:08

阅读数 237

评论数 0

从零开始学_JavaScript_系列(63)——class(4)静态方法和new.target

9、类静态方法9.1、基本概念所谓静态方法,在class指专属于class本身的方法,而且不会被类的实例所继承。如代码:class Foo { static test() { console.log("this is static") } } F...

2017-09-01 17:19:27

阅读数 221

评论数 0

从零开始学_JavaScript_系列(62)——class(3)setter和getter、Generator、async函数

6、setter和getter之前说过,常规情况下,类是没办法直接实现变量的。有一种变相的做法,是用es5的setter和getter特性来实现。但这种办法并不是完美的,有两个缺陷: setter和getter,就功能来说更强大,但对于一般需求来说,又过于复杂了; setter和getter本身只...

2017-09-01 17:18:27

阅读数 412

评论数 0

从零开始学_JavaScript_系列(61)——class(2)私有方法、this

4、私有4.1、私有方法不得不遗憾的表示,目前来看,类似c++或者java里的那种私有方法和私有变量,在js里面还是实现不了的。因此变通方法有三个:1、伪私有:下划线开头表示私有方法。如代码:class Foo { _testPrivate() { } }这种私有方法是一种约定俗称的...

2017-09-01 17:17:03

阅读数 328

评论数 0

从零开始学_JavaScript_系列(60)——class(1)基本概念

1、概念1.1、前注如果对c++之类语言比较熟悉的话,上手class的难度会很低,比上手原型链的难度低不少。目前来看,class的实现,依然是通过构造函数和原型链来实现的(相当于是一个语法糖,至少目前是这样的),而在Babel转码之后,也是通过构造函数和原型链来做到的。这里对于较为简单的内容,不会...

2017-09-01 17:14:50

阅读数 424

评论数 0

从零开始学_JavaScript_系列(59)——async函数

1、async函数简介1.1、前注在阅读本章节之前,建议先阅读 【Generator函数】章节和【Thunk函数】章节。不然很有可能对本章节内容摸不着头脑,或者理解有所偏差。如果有所了解或者比较熟悉的话,那么对本章绝大部分内容上手是非常轻松的。这里假定你已经对以上知识有所理解,不考虑完全不懂的人能...

2017-08-28 21:17:27

阅读数 470

评论数 0

从零开始学_JavaScript_系列(58)——Thunk函数

1、Thunk函数基本定义1.1、缘由与函数的求值策略有关,求值策略分为两种: 传名策略:在需要求值的时候才求值; 传值策略:在传入函数的时候就求值;(又有说法叫按值传递) 如以下的示例代码:function foo(a) { return a * 10 // 1+2在这里计算结果叫做...

2017-08-25 09:47:28

阅读数 376

评论数 0

从零开始学_JavaScript_系列(57)——Generator函数(5)状态机与函数的应用

6、状态机这里的状态机通常指有限状态机。所谓的有限状态机,是一个模型,通俗的来说: 这个模型有x个状态(x可确定),在任一时刻只能处于一个状态下,并且可以从一个状态切换到另外一个状态。 举个例子: 假如有一个ajax请求的提交按钮(比如【登陆】); 他有两个状态:①待命中;②提交中; 显然,他...

2017-08-23 00:40:15

阅读数 326

评论数 0

从零开始学_JavaScript_系列(56)——Generator函数(4)简写,this与继承

5、简写与this5.1、简写Generator函数的写法有三种(除了第一种名字都自己捏的): 声明式; 赋值式; 属性式; 其中,属性式除了常规写法外,还有简写版(就像当函数作为对象属性时的简写一样)。如代码,一目了然:// 声明式 function *g1() { yield 'g1'...

2017-08-23 00:39:02

阅读数 261

评论数 0

从零开始学_JavaScript_系列(55)——Generator函数(3)yield*表达式

4、yield*表达式4.1、基础简单来说,yield*表达式就是在一个Generator函数内嵌套另外一个Generator函数。于是在遍历的过程中,当在第一个Generator函数内遇见第二个Generator函数后,就会先停止遍历第一个Generator函数,先遍历完第二个Generator...

2017-08-23 00:37:56

阅读数 261

评论数 0

从零开始学_JavaScript_系列(54)——Generator函数(2)简单应用、throw和return

2、基本应用2.1、解构赋值数组是可以通过Iterator接口进行解构赋值的,对象不行是因为对象没有这个接口,那么假如我们给对象补上这个接口,对象自然也可以了。而Generator函数显然是Iterator的完美搭配(因为他能返回一个遍历器),将Generator函数作为对象的[Symbol.it...

2017-08-21 22:03:34

阅读数 195

评论数 0

从零开始学_JavaScript_系列(53)——Generator函数(1)基本概念和示例

1、Generator基本概念注:【遍历器】和【迭代器】是一个意思。1.1、表象: 函数名有个星号(就是乘号*); 函数体内部使用yield表达式(yield翻译成中文:产生); 函数调用后返回值是一个遍历器对象,该对象可以调用next方法遍历yield表达式返回的值; 函数内部可有返回值,也可以...

2017-08-21 22:01:04

阅读数 290

评论数 0

从零开始学_JavaScript_系列(52)——Iterator接口与for...of

0、一句话总结 Array、Set、arguments等自带Iterator接口 自定义Iterator接口,适合应用在自定义数据类型(比如链表) 任何接受数组作为参数的场合,其实都调用了遍历器接口 for…of可以遍历Iterator接口,无论他是默认的还是我们自...

2017-08-12 18:07:34

阅读数 368

评论数 0

从零开始学_JavaScript_系列(51)——Promise(4)Promise.resolve和Promise.reject

9、Promise.resolve Promise.resolve(value); Promise.resolve(promise); Promise.resolve(thenable); 参数与返回值: 参数是promise对象:返回值是参数,不做任何改变; 参数是the...

2017-07-28 10:11:50

阅读数 609

评论数 0

从零开始学_JavaScript_系列(50)——Promise(3)全部完成all和看谁最快race

7、全部完成才结束Promise.all场景我们在写ajax的时候,经常会面临这样一个场景:我有三个ajax请求,但是需要等着三个ajax的请求结果都出来后再进行处理。如果常见写法,我们需要在每个都执行完之后,依次判断一下其他的完成了没有,完成了才能继续,没完成就return。但是使用Promis...

2017-07-28 10:10:36

阅读数 530

评论数 0

提示
确定要删除当前文章?
取消 删除