es6
文章平均质量分 85
Curry 3O
I can do ALL things !
展开
-
Promise API 的手动实现
Promise API 的手动实现 一、Promise 手写 实现原理:其实就是一个发布订阅者模式 构造函数接收一个 executor 函数,并会在 new Promise() 时立即执行该函数 then 时收集依赖,将回调函数收集到 成功/失败队列 executor 函数中调用 resolve/reject 函数 resolve/reject 函数被调用时会通知触发队列中的回调 ES5写法 (function(window) { const PENDING = "pending"; con原创 2021-05-18 20:19:15 · 553 阅读 · 6 评论 -
ES6中数组、对象和函数的扩展
一、数组的扩展 1.概念 扩展运算符(spread)是三个点(...)。它好比 rest 参数的逆运算,将一个数组转为用逗号分隔的参数序列。扩展运算符与正常的函数参数可以结合使用,后面也可以放置表达式,但如果后面是一个空数组,则不产生任何效果。 let arr = []; arr.push(...[1,2,3,4,5]); console.log(arr); //[1,2,3,4,5] conso...原创 2019-08-18 19:58:10 · 370 阅读 · 0 评论 -
es6中数组的扩展
一、扩展运算符(…[ ])的应用 1.转成参数序列 2.复制数组 const a1 = [1, 2]; const a2 = a1.concat(); //es5 const a3 = [...a1]; //es6 const [...a4] = a1; 3.合并数组 [...arr1, ...arr2, ...arr3] (浅拷贝) 4.解构赋值 const [first, ...r...原创 2019-08-14 11:33:22 · 88 阅读 · 0 评论 -
es6的Promise对象
1.Promise介绍 Promise是异步编程的一种解决方案,比传统的解决方案(回调函数和事件)更合理和更强大。它由社区最早提出和实现,ES6 将其写进了语言标准,统一了用法,原生提供了Promise对象。 所谓Promise,简单说就是一个容器,里面保存着某个未来才会结束的事件(通常是一个异步操作)的结果。从语法上说,Promise 是一个对象,从它可以获取异步操作的消息。Promise 提...原创 2019-08-19 13:17:36 · 83 阅读 · 0 评论 -
es6中的Iterator介绍
一、Iterator(遍历器)的概念 JavaScript原有的表示“集合”的数据结构,主要是数组(Array)和对象(Object),ES6又添加了Map和Set。这样就有了四种数据集合,用户还可以组合使用它们,定义自己的数据结构,比如数组的成员是Map,Map的成员是对象。这样就需要一种统一的接口机制,来处理所有不同的数据结构。 遍历器(Iterator)就是这样一种机制。它是一种接口,为各种...原创 2019-08-15 11:46:26 · 253 阅读 · 0 评论 -
ES5和ES6中继承的实现
一、ES5中的两种非常经典的继承 1.组合继承 指的是将原型链和构造函数的技术组合到一起来实现继承。其背后的思路就是使用原型链实现对原型属性和方法的继承,而通过构造函数来实现对实例属性的继承。 示例 //构造函数继承实例属性(当然也可以有方法,不过不建议这么做) function Phone(name){ this.name = name; this.label=["全面屏","5...原创 2019-08-17 13:20:14 · 180 阅读 · 0 评论 -
Generator函数
一、Generator的基本概念 1.定义Gernerator函数 Generator是一种函数,这种函数是ES6提出的一种异步编程的解决方案,在它内部,使用 yield 关键字封装了一个个状态机。这个函数的执行结果,就是一个遍历器对象。 function* next() { yield 1; yield 2+2; return 3; } var fun = next(); co...原创 2019-09-01 12:52:21 · 293 阅读 · 0 评论 -
ES6和React笔试题
1、var、let、const之间的区别 var声明变量可以重复声明,而let不可以重复声明 var是不受限于块级的,而let是受限于块级 var会与window相映射(会挂一个属性),而let不与window相映射 var可以在声明的上面访问变量,而let有暂存死区,在声明的上面访问变量会报错 const声明之后必须赋值,否则会报错 const定义不可变的量,改变了就会报错 const和le...原创 2019-09-03 20:32:40 · 1751 阅读 · 0 评论 -
Web前端面试题汇总
1.说一下http和https - http和https的基本概念 http: 超文本传输协议,是互联网上应用最为广泛的一种网络协议,是一个客户端和服务器端请求和应答的标准(TCP),用于从WWW服务器传输超文本到本地浏览器的传输协议,它可以使浏览器更加高效,使网络传输减少。 https: 是以安全为目标的HTTP通道,简单讲是HTTP的安全版,即HTTP下加入SSL...原创 2019-09-10 20:42:00 · 522 阅读 · 0 评论