摘要: 实现的核心思路就是利用这些方法的特性: 比如有没有返回值, 返回值是什么 对回调函数的理解 1. 实现forEach Array.prototype.myForEach = function (fn) { if (Object.prototype.toString.call(fn) !== '[ob 阅读全文
posted @ 2021-08-02 22:48 只猫 阅读(132) 评论(0) 推荐(0) 编辑
摘要: 1. Proxy 1. proxy是什么 MDN给出的定义是: proxy对象用于定义基本操作的自定义行为, 例如属性查找, 赋值, 枚举, 函数调用等 proxy捕获对其目标对象进行的调用和操作, 然后可以更优雅的处理这些调用和操作, 它在目标对象周围创建了一个无法检测的屏障, 将所有操作重定向到 阅读全文
posted @ 2021-08-02 22:47 只猫 阅读(401) 评论(0) 推荐(0) 编辑
摘要: 本质是对generator函数的封装 async/await相当于是generator函数的语法糖 通过generator函数进行异步请求 function request(url) { axios.get(url).then(res => { gen.next(res) }) } function 阅读全文
posted @ 2021-08-02 22:46 只猫 阅读(61) 评论(0) 推荐(0) 编辑
摘要: 1. Generator函数的基本概念 Generator 函数是es6提供的一种异步编程的解决方案 目前为止学过的异步处理的手段: 定时任务 promise 有如下特性: 使用function声明, 在function关键字和函数名之间有一个*号 函数内部使用yield表达式 调用Generato 阅读全文
posted @ 2021-08-02 22:43 只猫 阅读(272) 评论(0) 推荐(0) 编辑
摘要: Promise 1. 为什么需要Promise 先看一个需求 通过ajax请求id, 再根据id请求用户名, 再根据用户名获取email $.ajax({ // 请求id type: 'GET', url: './data1.json', success: function (res) { cons 阅读全文
posted @ 2021-08-02 22:42 只猫 阅读(111) 评论(0) 推荐(0) 编辑
摘要: class中的继承 extends 关键字 class Father { } class Son extends Father { } super 关键字 super既可以当作函数又可以当作对象 1. 当作函数使用时 先来看一个示例, A继承自B, 然后直接实例化A class B { } clas 阅读全文
posted @ 2021-08-02 22:40 只猫 阅读(130) 评论(0) 推荐(0) 编辑
摘要: 1. ES5中的类 在es5中, 我们约定俗成的将首字母大写的函数称为构造函数, 我们可以通过构造函数来进行实例化, 在其他高级语言中, 我们或多或少都看过这样的说明: 类是一类事物的抽象, 而对象是类的具体表现, 但是在es5中, 并没有类的概念, 而是将构造函数 认为是类, 并通过原型绑定的方式 阅读全文
posted @ 2021-08-02 22:39 只猫 阅读(149) 评论(0) 推荐(0) 编辑
摘要: 1. 迭代、可迭代对象 1.1 迭代 iteration 维基百科给出的定义是: 迭代是重复反馈过程的活动, 每一次对过程的重复被称为一次迭代 在编程语言中, 我们通过像 for 循环的方式来遍历某个数据, 这种遍历我们称为迭代 (iterator) for (let i = 0; i < 5; i 阅读全文
posted @ 2021-08-02 22:38 只猫 阅读(76) 评论(0) 推荐(0) 编辑
摘要: 1. 箭头函数的基本使用 基本使用 let arr = [1, 2, 3, 4] arr.forEach((item, index) => { console.log(item, index) }) 只有一个参数时, 小括号可以省略, 没有参数时, 小括号需要加上 let arr = [1, 2, 阅读全文
posted @ 2021-08-02 22:37 只猫 阅读(239) 评论(0) 推荐(0) 编辑
摘要: 1. Set 1.1 Set的基本使用 Set 是es6新增的引用类型的数据结构, 其本身也是一个构造函数, 可以接收一个数组作为参数 特点: 元素的值是唯一的, 不存在重复元素 基本使用 let set = new Set([1, 2, 2, 3, 1, 5]) console.log(set) 阅读全文
posted @ 2021-08-02 22:36 只猫 阅读(78) 评论(0) 推荐(0) 编辑
摘要: 1. 字符串扩展方法 1.1 模板字符串 语法: `` 反引号, 以及 ${expression} 的占位符 基本使用 let txt = ` 这是一段 换行的 文字 ` console.log(txt); 占位符的使用 // 传递变量 const name = '猫13' let info = ` 阅读全文
posted @ 2021-08-02 22:35 只猫 阅读(46) 评论(0) 推荐(0) 编辑