摘要:
两个inject工具函数轻松解决严格注入和Hook 返回值透传问题! 痛苦的经历 自从使用了Provide/Inject代码的组织方式更加灵活了,但是这个灵活性的增加伴随着代码容错性的降低。相信只要是真的在项目中引入Provide/Inject的同学,一定一定有过或者正在经历下面的状况: 😢 注入 阅读全文
posted @ 2023-11-27 17:37
柯基与佩奇
阅读(360)
评论(0)
推荐(0)
摘要:
项目背景 随着业务的积累,前端项目之间逐渐会产生许多可以跨项目复用的逻辑或组件。比如对前端数据库 indexedDB 的封装、对 fetch 请求进度和中断请求功能的扩展、以及可能会在多个项目使用的 react 和 vue 组件。当前已经有一个公共库专门用来收敛 js 的逻辑复用,但是随着相同技术栈 阅读全文
posted @ 2023-11-27 16:55
柯基与佩奇
阅读(226)
评论(0)
推荐(0)
摘要:
前言 与许多其他编程语言一样,JavaScript 也在不断发展。每年,该语言都会通过新功能变得更加强大,使开发人员能够编写更具表现力和简洁的代码。 ES13(ECMAScript 2022)新特性 1.类 在 ES13 之前,类字段只能在构造函数中声明。与许多其他语言不同,无法在类的最外层作用域中 阅读全文
posted @ 2023-11-27 16:54
柯基与佩奇
阅读(34)
评论(0)
推荐(0)
摘要:
1. Promise.any E12 新增的 Promise 的方法 接收一个 Promise 数组,数组中如有非 Promise 项,则此项当做成功 如果有一个 Promise 成功,则返回这个成功结果 如果所有 Promise 都失败,则报错 // 当有成功的时候,返回最快那个成功 functi 阅读全文
posted @ 2023-11-27 16:50
柯基与佩奇
阅读(22)
评论(0)
推荐(0)
摘要:
1. Promise.allSettled ES11 新增的 Promise 的方法 接收一个 Promise 数组,数组中如有非 Promise 项,则此项当做成功 把每一个 Promise 的结果,集合成数组,返回 function fn(time, isResolve) { return ne 阅读全文
posted @ 2023-11-27 16:50
柯基与佩奇
阅读(43)
评论(0)
推荐(0)
摘要:
1. Array.flat 有一个二维数组,想让他变成一维数组: const arr = [1, 2, 3, [4, 5, 6]]; console.log(arr.flat()); // [ 1, 2, 3, 4, 5, 6 ] 还可以传参数,参数为降维的次数 const arr = [1, 2, 阅读全文
posted @ 2023-11-27 16:50
柯基与佩奇
阅读(58)
评论(0)
推荐(0)
摘要:
1. for await of 来看以下场景 function fn(time) { return new Promise((resolve, reject) => { setTimeout(() => { resolve(`${time}毫秒后成功!!!`); }, time); }); } fn 阅读全文
posted @ 2023-11-27 16:50
柯基与佩奇
阅读(11)
评论(0)
推荐(0)
摘要:
1. Object.values 可以用来获取对象的 value 的集合 const obj = { name: "柯基", age: 22, gender: "男", }; const values = Object.values(obj); console.log(values); // [ ' 阅读全文
posted @ 2023-11-27 16:49
柯基与佩奇
阅读(14)
评论(0)
推荐(0)
摘要:
1. includes 传入元素,如果数组中能找到此元素,则返回 true,否则返回 false const includeArr = [1, 2, 3, "柯基", "科比"]; const isKobe = includeArr.includes("科比"); console.log(isKob 阅读全文
posted @ 2023-11-27 16:49
柯基与佩奇
阅读(91)
评论(0)
推荐(0)
摘要:
1. let 和 const 要逐渐放弃 let,在项目中多用 let 和 const,与 let 的区别: let 有变量提升,有初始化提升,值可变 let 有变量提升,没有初始化提升,值可变 const 有变量提升,没有初始化提升,值不可变,但如果是定义对象,则属性可变 暂时性死区问题说明:其实 阅读全文
posted @ 2023-11-27 16:49
柯基与佩奇
阅读(27)
评论(0)
推荐(0)
摘要:
有以下三种: 数据绑定与观察者模式 函数参数的验证 简便的构造函数 1.数据绑定与观察者模式 实现数据绑定与观察者模式,也可以使用 ES5 新增的 Object.defineProperty()方法,Vue2 就是使用该技术实现的,而 Vue3 为什么换用 Pro 需要来实现呢? 所以现在先来对比一 阅读全文
posted @ 2023-11-27 16:48
柯基与佩奇
阅读(51)
评论(0)
推荐(0)
摘要:
详解 JS 中的 Proxy(代理)和 Reflect(反射) 总所周知,Vue2 => Vue3 时,数据响应式方法从 Object.defineProperty()方法变成了 Proxy(),所以今天与 Proxy(代理)和 Reflect(反射)的知识。 讲解 Proxy 和 Reflect 阅读全文
posted @ 2023-11-27 16:47
柯基与佩奇
阅读(2067)
评论(0)
推荐(0)
摘要:
for...in 的特点 for...in 循环返回的值都是数据结构的 键值名(即下标)。 遍历对象返回的对象的 key 值,遍历数组返回的数组的下标(key)。 for...in 循环不仅可以遍历数字键名,还会遍历原型上的值和手动添加的其他键。 特别情况下, for...in 循环会以看起来任意的 阅读全文
posted @ 2023-11-27 16:47
柯基与佩奇
阅读(169)
评论(0)
推荐(0)
摘要:
什么是迭代器模式 迭代器模式提供一种方法顺序访问一个聚合对象中的各个元素,而又不暴露该对象的内部表示。 ——《设计模式:可复用面向对象软件的基础》 可以说迭代器模式就是为了遍历存在的。提到遍历,大家都对那些手段耳熟能详了,下面先简单列一下各种数据类型的遍历: 遍历数组 for 循环 forEach 阅读全文
posted @ 2023-11-27 16:46
柯基与佩奇
阅读(78)
评论(0)
推荐(0)
摘要:
Generator 是 ES6 中新增的语法,和 Promise 一样,都可以用来异步编程。Generator 函数可以说是 Iterator 接口的具体实现方式。Generator 最大的特点就是可以控制函数的执行。 function* 用来声明一个函数是生成器函数,它比普通的函数声明多了一个*, 阅读全文
posted @ 2023-11-27 16:43
柯基与佩奇
阅读(41)
评论(0)
推荐(0)
摘要:
1. generator 的使用 Generator 函数跟普通函数的写法有非常大的区别: 一是,function 关键字与函数名之间有一个星号; 二是,函数体内部使用 yield 语句,定义不同的内部状态(yield 在英语里的意思就是“产出”)。 最简单的 Generator 函数如下: fun 阅读全文
posted @ 2023-11-27 16:43
柯基与佩奇
阅读(74)
评论(0)
推荐(0)
摘要:
目录一、Promise 介绍定义特点缺点场景基本用法二、promise 源码实现 一、Promise 介绍 定义 Promise 是异步编程的一种解决方法,比传统的回调函数和事件更合理;它是由社区提出和实现经由 ES6 将其写进语言标准,并在原生提供了 Promise 对象; Promise 可以理 阅读全文
posted @ 2023-11-27 16:41
柯基与佩奇
阅读(260)
评论(0)
推荐(0)
摘要:
目录前言一个令人头疼的需求准备工作Promiseasynccombine-async-error 心路历程封装之前让 await 永远不要抛出错误保证不抛出错误保证顺序执行开始封装使用形式完成 combineAsyncError 的返回值combineAsyncError 的初始化工作在 handl 阅读全文
posted @ 2023-11-27 16:40
柯基与佩奇
阅读(21)
评论(0)
推荐(0)
摘要:
Promise 的状态一经改变就不能再改变 .then 和.catch 都会返回一个新的 Promise catch 不管被连接到哪里,都能捕获上层的错误 在 Promise 中,返回任意一个非 promise 的值都会被包裹成 promise 对象,例如 return 2 会被包装为 return 阅读全文
posted @ 2023-11-27 16:40
柯基与佩奇
阅读(938)
评论(0)
推荐(0)
摘要:
性能优化这个词经常会在前端的工作或面试中遇到,这个东西说难好像也并不怎么难,毕竟谁都能说上几点。但是如果你想在工作上遇到各种场景的性能瓶颈时都有直击本质的性能方案,或者在面试时让面试官眼前一亮,那就不能只拘泥于『想到哪说到哪』或者『说个大概』,而要有一套体系化的、各个角度的、深入了解的知识图谱。这篇 阅读全文
posted @ 2023-11-27 16:08
柯基与佩奇
阅读(528)
评论(0)
推荐(0)

浙公网安备 33010602011771号