自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(5)
  • 收藏
  • 关注

原创 JS-为什么说 async/await是generator的语法糖?

关于async的介绍,在阮一峰的ES6入门教程中说到:async 函数是什么?一句话,它就是 Generator 函数的语法糖。可是,为什么这么说呢?首先,比如说有一个异步操作,使用 async/await 语法来以同步模拟异步操作。使用 async/await 实现一个 sleep 的功能function sleep(time) { return new Promise((re...

2019-04-14 19:13:46 4108 1

原创 JS-Generator 执行器的实现

Generator 是一个异步操作的容器。它的自动执行需要一种机制,当异步操作有了结果,自动交回执行权。两种方法可以实现执行器:回调函数。将异步操作包装成 Thunk 函数,在回调函数里面交回执行权;Promise 对象。将异步操作包装成 Promise 对象,用 then 方法中交回执行权Thunk 函数实现 generator 执行器在js中实现异步的方式为回调函数,比如读取文件...

2019-04-14 18:59:41 2142

原创 JS-原型,原型链,基于原型和class方式的继承,一篇文章就够了!

原型每个函数(构造函数)都有一个 prototype 属性,指向该函数(构造函数)的原型对象。实例没有 prototype 属性,但是有 __proto__ 属性。函数同时有 prototype 和 __proto__ 属性。function Person(name) { this.name = name;}let person = new Person('xiaoming');...

2019-04-12 15:44:58 1543

原创 JS- async和defer对script脚本加载的影响

直接使用script脚本的话,html会按照顺序来加载并执行脚本,在脚本加载&执行的过程中,会阻塞后续的DOM渲染。这是因为 UI 渲染线程与 JS 引擎是互斥的,当 JS 引擎执行时 UI 线程会被挂起。defer如果script标签设置了该属性,则浏览器会异步的下载该文件并且不会影响到后续 DOM 的渲染;如果有多个设置了 defer 的script标签存在,则会按照顺序执行所...

2019-04-11 11:01:07 961

原创 JS-前端使用Blob和File读取文件

目录Blob及其属性和方法FileFileReader及其属性和方法URL及其属性和方法历史上,JavaScript 无法处理二进制数据。如果一定要处理的话,只能使用 charCodeAt() 方法,一个个字节地从文字编码转成二进制数据,还有一种办法是将二进制数据转成 Base64 编码,再进行处理。这两种方法不仅速度慢,而且容易出错。ECMAScript 5 引入了 Blob 对象...

2019-04-07 15:10:16 26098 2

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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