-
overflow:hidden裁剪溢出内容并禁用滚动,非仅隐藏滚动条;可用于图片圆角裁切,但会触发BFC、影响动画性能及焦点管理,需配合其他属性保障可访问性。
-
JavaScript正则表达式通过字面量(/pattern/flags)或构造函数(newRegExp())创建,支持g、i、m、s等标志;常用方法包括match()、test()、replace()、split();需避免回溯爆炸、预编译复用、优选test()判断存在性。
-
本文介绍在JavaScript中如何利用解构赋值和函数返回值,简洁、安全地批量更新已有对象的多个属性,避免手动逐个赋值,提升代码可读性与可维护性。
-
JavaScript日期操作需警惕时区陷阱:newDate()返回本地时间,ISO字符串默认UTC解析;避免字符串解析歧义,推荐数值构造或补全时间;格式化应手动拼接而非依赖toLocaleDateString();日期加减优先用毫秒计算;相对时间显示推荐Intl.RelativeTimeFormat。
-
JavaScript模块化关键在正确使用ESM与CommonJS:二者不兼容,混用报错;ESM的import须顶层声明,动态加载需用import();exportdefault与具名export导入方式严格对应;Node.js中ESM需启用"type":"module"且路径必须带后缀。
-
JavaScript与WebAssembly集成旨在结合两者优势:JavaScript负责DOM交互,Wasm处理高性能计算。通过fetch加载Wasm模块,共享线性内存传递数据,Emscripten生成胶水代码简化开发,并支持Wasm调用JS实现双向通信,提升Web应用性能。
-
浮动导致父容器高度塌陷是因浮动元素脱离文档流,解决需让父容器重新感知高度;overflow:hidden触发BFC但会裁剪溢出内容,clearfix更可控且无副作用,现代推荐直接用flex布局。
-
flex-wrap是控制Flex项目是否换行的属性,默认nowrap;当表单项多、容器窄时,设为wrap才能折行实现响应式布局,并需配合justify-content和flex设置确保对齐与宽度分配。
-
Promise是对异步操作的抽象封装,具有pending、fulfilled、rejected三种不可逆状态;pending不可跳过,状态单向流转;async/await错误处理更安全;Promise.all()全有或全无,Promise.allSettled()允许部分失败;未捕获拒绝会导致内存泄漏。
-
CSS中无mask-color属性,可通过background-color与mask-image结合、filter滤镜、SVG内联fill着色或伪元素叠加实现遮罩颜色效果。
-
本文介绍如何使用原生JavaScript和CSS类切换,实现点击不同按钮显示对应图形区域,并分别计算正方形与长方形面积,避免冗余函数,提升代码可维护性。
-
WebWorker是独立于主线程的后台脚本,不共享内存、不可操作DOM,通过postMessage通信,支持Transferable优化大数据传输,需显式错误监听,SharedArrayBuffer+Atomics可实现共享内存但需跨域隔离。
-
JavaScript代码可测试性的核心在于函数纯度、显式依赖和副作用隔离:纯函数需避免隐式状态依赖,依赖应通过参数注入而非闭包或顶层模块引用,副作用如时间、I/O等需抽象为可替换输入,测试时优先真实渲染而非过度mock,并正确处理异步逻辑。
-
JavaScript函数的核心差异在于this绑定、参数处理和调用方式:function声明具提升性、独立this和arguments,可作构造函数;箭头函数无this和arguments、不可构造、继承外层this;剩余参数替代arguments;原始类型传值,引用类型传共享引用;闭包需防内存泄漏。
-
设置边框需同时定义宽度和样式,border-width设置粗细,border-style定义类型如solid、dashed,二者结合border-color可简写为border属性,单独设置某边可用border-top-style等属性。