-
HTML5屏幕适配需五步:一、设置viewport元标签;二、用媒体查询定义断点;三、采用rem等相对单位;四、启用flexbox/Grid弹性布局;五、通过srcset等适配高清屏图像。142 收藏 -
Jest报ReferenceError:Reactisnotdefined是因为未配置JSX解析,需在jest.config.js中设置testEnvironment:'jsdom'并配置Babeltransform。205 收藏 -
ES6的class是语法糖,本质仍是原型链,提供更直观的面向对象写法和继承机制,但不改变封装性与私有化能力。277 收藏 -
使用try/catch捕获async函数错误,封装高阶函数复用处理逻辑,结合Promise链的catch和全局unhandledrejection事件监听,构建完整异步错误处理机制。134 收藏 -
记忆化是纯函数的“结果快照”,将输入与输出映射缓存,相同输入直接返回结果;它非通用缓存,需手动实现、仅适用于无副作用函数,且不等同于React的useMemo或React.memo。346 收藏 -
Grid适合二维布局,Flexbox适合一维排列;Grid能显式定义行列结构、跨行跨列定位及动态列数推导,Flexbox仅支持单轴对齐与顺序调整,二者边界清晰,应按需选用。174 收藏 -
可通过CSSfilter属性实现文字虚化:一、blur()基础虚化;二、blur+opacity模拟景深;三、backdrop-filter虚化背景;四、SVG滤镜实现方向性虚化;五、伪元素叠加双层虚化。337 收藏 -
JavaScript提升是引擎在编译阶段将var和function声明的声明部分提前至作用域顶部,但赋值仍保留在原位置;var声明提升后访问得undefined,function声明完全提升,function表达式仅变量声明提升,let/const存在暂时性死区。357 收藏 -
适合批量更新元素内容的DOM方法是textContent、setAttribute()和DocumentFragment;单个文本用textContent,批量插入用DocumentFragment避免重排重绘。239 收藏 -
模板字符串是JavaScript唯一原生支持表达式嵌入、多行书写和结构化插值的字符串语法,用反引号定义,核心价值在于解决拼HTML、SQL、防XSS、i18n、日志格式化等真实痛点。479 收藏 -
应使用requestAnimationFrame替代setInterval实现动画主循环,因其与屏幕刷新率同步、精度高且不易卡顿;需在回调中更新状态并重绘,末尾递归调用自身,避免耗时操作,配合keydown/keyup监听按键状态,注意Canvas坐标系、图像加载时机、变换隔离及AABB碰撞检测等关键细节。449 收藏 -
最后一行按钮掉下来是因为末尾按钮的margin-right占用多余空间;应改用margin-left从第二个按钮开始设置,或直接使用flex布局配合justify-content或gap控制间距。132 收藏 -
absolute定位弹出框需设直接父容器为relative,否则基准为视口导致错位;relative不改变布局但提供定位上下文;top/left/right/bottom组合决定锚点位置。228 收藏 -
实现列表横向滑动需设容器为flex布局并禁换行,再启用overflow-x:auto;关键要防止子项被压缩,可设flex-shrink:0或flex:none,辅以scroll-behavior:smooth等优化。239 收藏 -
可选链运算符(?.)解决嵌套对象属性访问时因null/undefined导致的运行时错误问题,通过在链式访问中遇空值立即返回undefined而非抛出错误,提升代码安全性与健壮性。242 收藏