JS中的WeakMap与WeakSet
介绍 {#介绍} -------- `WeakMap`与`WeakSet`都是一种优化使用内存的解决方案。这两个数据结构的引用不会导致这些对象不被回收。上来就说这些有点太枯燥了,还是先聊聊它们能干什么。 WeakSet {#WeakSet} ------------------ 集合就是一堆互异的数据,想必这个读者都早就明白了,这里不多说。 相对于正统`Set`,`We...
51工具盒子
介绍 {#介绍} -------- `WeakMap`与`WeakSet`都是一种优化使用内存的解决方案。这两个数据结构的引用不会导致这些对象不被回收。上来就说这些有点太枯燥了,还是先聊聊它们能干什么。 WeakSet {#WeakSet} ------------------ 集合就是一堆互异的数据,想必这个读者都早就明白了,这里不多说。 相对于正统`Set`,`We...
<h2>源码 {#源码}</h2> <blockquote> <p>来自半年后的说明:我把代码转放到 gists 里了,当时代码风格受 Python 影响较大,这里就不再更改了,毕竟大家本地都有自己的格式化工具。</p> </blockquote> <p>前往<a href="h...
今天给大家分享一个简单的小技巧,如何使用JavaScript实现图片预览功能(无需多余的加载,秒开)。通过简单的代码,可以轻松地在网页上预览图片,为用户提供更好的视觉体验。 1.效果展示 ------  { if (date == null) return '' const dayArr = \['前天'...
英文: Node.js Connection terminated before query is finished 问题 {#heading} ============= 新手使用node.js。 我在一个托管有`PostgreSQL`数据库的Windows服务器上设置了一个Node/express服务器。 我的目标是通过一个HTML表单,将用户在自己计算机...
英文: Error: ClerkInstanceContext not found in Nextjs using for Clerk 问题 {#heading} ============= * error node_modules/@clerk/shared/dist/esm/hooks/createContextAndHook.js (4:0) @ assertC...
源码 {#源码} -------- 使用[Codepen在线体验](https://codepen.io/kifuan/pen/RwQjrzM)和查看源码。 页面代码 {#页面代码} ------------ 在我们用前端框架的时候,经常用到路由技术,就是在地址栏确实发生了变化但是页面没有刷新,那么本文就介绍通过更改哈希的方式实现这样一种路由,下面是页面代码: |---...
需求 {#需求} -------- 假设我们有这样一个数据(来源于参考文章中的*浅谈JavaScript函数重载*,链接在文章尾部给出): |---------------|--------------------------------------------------------------------------------| | ``` 1 2 3 ``` | `...
工厂方法模式 {#工厂方法模式} ---------------- > 定义一个用于创建对象的接口,让子类决定实例化哪一个类。工厂方法使一个类的**实例化延迟到子类**。 > > ------《设计模式:可复用面向对象软件的基础》中文版第81页 在我理解中,所谓工厂方法,是指我们通过**调用已知的接口,获得未知的对象,做出预期的行为**。工厂方法为我们提供...
意图 {#意图} -------- > 将一个复杂对象的构建与它的表示(即实例对象)分离,使得同样的构建过程可以创建不同的表示 > > ------《设计模式:可复用面向对象软件的基础》中文版第74页 这句话里包含着两个要素:第一个是分离构建与表示,也就是说我们要单独创建一个新的类`XxxBuilder`来进行构建操作;第二个是这个`XxxBuilder`...