Javascript - Promise 对象

QRI的头像
QRI
这人还不错哦!
Promise 的含义Promise 是异步编程的一种解决方案,比传统的解决方案——回调函数和事件——更合理和更强大。它由社区最早提出和实现,ES6 将其写进了语言标准,统一了用法,原生提供了Promise对象。所谓Promise,简单说就是一个容器,里面保存着某个未来才会结束的事件(通常是一个异步... 显示全部
阅读:1 0 2019-11-09

Javascript - Iterator 和 for...of 循环

QRI的头像
QRI
这人还不错哦!
Iterator(遍历器)的概念JavaScript 原有的表示“集合”的数据结构,主要是数组(Array)和对象(Object),ES6 又添加了Map和Set。这样就有了四种数据集合,用户还可以组合使用它们,定义自己的数据结构,比如数组的成员是Map,Map的成员是对象。这样就需要一种统一的接口... 显示全部
阅读:1 0 2019-11-09

Javascript - Generator 函数的语法

QRI的头像
QRI
这人还不错哦!
简介基本概念Generator 函数是 ES6 提供的一种异步编程解决方案,语法行为与传统函数完全不同。本章详细介绍 Generator 函数的语法和 API,它的异步编程应用请看《Generator 函数的异步应用》一章。Generator 函数有多种理解角度。语法上,首先可以把它理解成,Gene... 显示全部
阅读:1 0 2019-11-09

Javascript - async 函数

QRI的头像
QRI
这人还不错哦!
含义ES2017 标准引入了 async 函数,使得异步操作变得更加方便。async 函数是什么?一句话,它就是 Generator 函数的语法糖。前文有一个 Generator 函数,依次读取两个文件。const fs = require('fs');const readFile ... 显示全部
阅读:1 0 2019-11-09

Javascript - Class 的基本语法

QRI的头像
QRI
这人还不错哦!
简介类的由来JavaScript 语言中,生成实例对象的传统方法是通过构造函数。下面是一个例子。function Point(x, y) {this.x = x;this.y = y;}Point.prototype.toString = function () {return '('... 显示全部
阅读:1 0 2019-11-09

Javascript - Class 的继承

QRI的头像
QRI
这人还不错哦!
简介Class 可以通过extends关键字实现继承,这比 ES5 的通过修改原型链实现继承,要清晰和方便很多。class Point {}class ColorPoint extends Point {}上面代码定义了一个ColorPoint类,该类通过extends关键字,继承了Point类的所... 显示全部
阅读:1 0 2019-11-09

Javascript - Module 的语法

QRI的头像
QRI
这人还不错哦!
概述历史上,JavaScript 一直没有模块(module)体系,无法将一个大程序拆分成互相依赖的小文件,再用简单的方法拼装起来。其他语言都有这项功能,比如 Ruby 的require、Python 的import,甚至就连 CSS 都有@import,但是 JavaScript 任何这方面的支持... 显示全部
阅读:1 0 2019-11-09

Javascript - Module 的加载实现

QRI的头像
QRI
这人还不错哦!
上一章介绍了模块的语法,本章介绍如何在浏览器和 Node 之中加载 ES6 模块,以及实际开发中经常遇到的一些问题(比如循环加载)。浏览器加载传统方法HTML 网页中,浏览器通过<script>标签加载 JavaScript 脚本。<!-- 页面内嵌的脚本 --><sc... 显示全部
阅读:1 0 2019-11-09

Javascript - 编程风格

QRI的头像
QRI
这人还不错哦!
本章探讨如何将 ES6 的新语法,运用到编码实践之中,与传统的 JavaScript 语法结合在一起,写出合理的、易于阅读和维护的代码。多家公司和组织已经公开了它们的风格规范,下面的内容主要参考了 Airbnb 公司的 JavaScript 风格规范。块级作用域(1)let 取代 varES6 提出... 显示全部
阅读:1 0 2019-11-09

Javascript - 读懂 ECMAScript 规格

QRI的头像
QRI
这人还不错哦!
概述规格文件是计算机语言的官方标准,详细描述语法规则和实现方法。一般来说,没有必要阅读规格,除非你要写编译器。因为规格写得非常抽象和精炼,又缺乏实例,不容易理解,而且对于解决实际的应用问题,帮助不大。但是,如果你遇到疑难的语法问题,实在找不到答案,这时可以去查看规格文件,了解语言标准是怎么说的。规格... 显示全部
阅读:1 0 2019-11-09

Javascript - 异步遍历器

QRI的头像
QRI
这人还不错哦!
同步遍历器的问题《遍历器》一章说过,Iterator 接口是一种数据遍历的协议,只要调用遍历器对象的next方法,就会得到一个对象,表示当前遍历指针所在的那个位置的信息。next方法返回的对象的结构是{value, done},其中value表示当前的数据的值,done是一个布尔值,表示遍历是否结束... 显示全部
阅读:1 0 2019-11-09

Javascript - ArrayBuffer

QRI的头像
QRI
这人还不错哦!
ArrayBuffer对象、TypedArray视图和DataView视图是 JavaScript 操作二进制数据的一个接口。这些对象早就存在,属于独立的规格(2011 年 2 月发布),ES6 将它们纳入了 ECMAScript 规格,并且增加了新的方法。它们都是以数组的语法处理二进制数据,所以统... 显示全部
阅读:1 0 2019-11-09

Javascript - 最新提案

QRI的头像
QRI
这人还不错哦!
本章介绍一些尚未进入标准、但很有希望的最新提案。do 表达式本质上,块级作用域是一个语句,将多个操作封装在一起,没有返回值。{let t = f();t = t * t + 1;}上面代码中,块级作用域将两个语句封装在一起。但是,在块级作用域以外,没有办法得到t的值,因为块级作用域不返回值,除非t是... 显示全部
阅读:1 0 2019-11-09

Javascript - 装饰器

QRI的头像
QRI
这人还不错哦!
[说明] Decorator 提案经过了大幅修改,目前还没有定案,不知道语法会不会再变。下面的内容完全依据以前的提案,已经有点过时了。等待定案以后,需要完全重写。装饰器(Decorator)是一种与类(class)相关的语法,用来注释或修改类和类方法。许多面向对象的语言都有这项功能,目前有一个提案将... 显示全部
阅读:1 0 2019-11-09

Javascript - 函数式编程

QRI的头像
QRI
这人还不错哦!
JavaScript 语言从一诞生,就具有函数式编程的烙印。它将函数作为一种独立的数据类型,与其他数据类型处于完全平等的地位。在 JavaScript 语言中,你可以采用面向对象编程,也可以采用函数式编程。有人甚至说,JavaScript 是有史以来第一种被大规模采用的函数式编程语言。ES6 的种种... 显示全部
阅读:1 0 2019-11-09