如果使用传统的 if-else 语句,对复杂的条件进行逻辑判断,代码很容易变得冗长难维护,分享几种替代的写法。 1. 对象映射替代 if-else 传统写法 function getPrice(user) { if (user.type === 'vi...
JavaScript
别再手动 try…catch 了:一种更优雅的 async/await 错误处理模式
async/await 是 ES7 中引入的语法糖,它彻底改变了 JavaScript 中异步编程的方式。它让我们能够以一种看似同步的方式编写异步代码,极大地提高了代码的可读性和可维护性。 然而,凡事皆有两面。当我们享...
JavaScript原型、原型链知识回顾
前言 原型和原型链是 JavaScript 中非常重要的一个知识点。 前置知识 构造函数 构造函数在面向对象的语言中,通常是用来创建实例对象。在 ES6 版本前,JavaScript 中使用&...
用这 9 个 API,我把页面性能干到了 90+
最近项目上线,用户一多,页面就卡得不行。首屏加载 3 秒起,滚动掉帧,手机发烫……被 QA 喊去聊了好几次。 没办法,只能低头研究性能优化。翻了一圈文档和实战案例,发现现代浏览器其实给了我们很多“外挂”——...
一个隐藏的 HTML 属性帮我省下了 500 行 JavaScript 代码
上周二,我在改一个“远古”管理后台的时候,被自己气笑了。 为了维护几个弹窗,我居然堆了 500 多行 JavaScript: 管理焦点的 focus trap 监听 Esc 关闭 点击遮罩关闭 一堆 ARIA 无障碍属性...
JavaScript 如何判断 字符串 是 类似 对象字符串
javaScript 如何判断 字符串 是 类似 对象字符串 在 JavaScript 中,判断一个字符串是否是 类似对象的字符串(例如 JSON 格式的字符串,如 "{ name: 'John', age: 30 }"),可以通过以下几种方法实...
前端实现画中画超简单,让网页飞出浏览器
Document Picture-in-Picture 介绍 今天,我来介绍一个非常酷的前端功能:文档画中画 (Document Picture-in-Picture, 本文简称 PiP)。你有没有想过,网页上的任何内容能悬浮在桌面上? 视频流媒体的画中画...
抛弃 for 循环,让 JavaScript 代码更丝滑
在如今的 JavaScript 开发中,传统的 for 循环虽然经典,但在许多场景下,它已经 不再是最优解,甚至可以说 有些 “落后” 了。 尽管 for 循环依然是 JavaScript 循环机制的基础...
这段时间 JavaScript 原生开发做的一些优化点
最近在开发一个用原生 JavaScript 开发的项目,说实话,我平时开发的都是使用 Vue/React 进行开发,所以这次使用 JavaScript 原生开发,就需要自己去做一些性能的优化 文档碎片 DocumentFragment ...
ES2024新特性:8个实用功能解析
JavaScript 作为一门不断发展的语言,每年都会引入新的特性来提升开发体验。 1. Promise.withResolvers() 这个新特性提供了一种更优雅的方式来创建和管理 Promise 的 resolve 和 reject 函数。 // 旧方...
