-
JavaScript数组创建有字面量、构造函数、Array.of()和Array.from()四种方式;length属性可写,修改会截断或扩展数组,其值为最大整数索引加1,不等于元素个数。
-
:active常失效因指针事件被拦截、元素无交互语义或移动端延迟;应检查pointer-events、z-index,用button替代div,设touch-action:manipulation,并用JS监听touchstart/touchend模拟按住状态。
-
nomodule属性不是兼容旧浏览器的开关,而是让现代浏览器忽略该脚本;旧浏览器因不识别nomodule而照常执行它。必须成对使用type="module"和nomodule脚本,各自独立、语法分离:module脚本用ES6+特性,nomodule脚本须为ES5、无模块语法且含必要polyfill。
-
防抖和节流在JavaScript中用于性能优化。防抖适用于用户停止操作后执行的场景,如搜索框输入;节流适用于定期执行的场景,如滚动事件处理。实现防抖函数:1.使用setTimeout延迟执行,2.清除之前的定时器,3.返回新函数。实现节流函数:1.使用标志控制执行,2.设置定时器重置标志,3.返回新函数。
-
SharedWorker能显著降低服务端并发连接数,通过让同源多页面共享单个WebSocket实例,避免重复建连;实测某电商后台多开场景下连接数下降92%,但需严格满足HTTPS同源、Worker内创建连接、clientId隔离路由等前提。
-
必须用background-image替换linear-gradient才能自定义Bootstrap5条纹进度条颜色,background-color无效;.progress-bar-striped和.progress-bar-animated需同步修改且方向、色标一致,并注意.progress底色对比度。
-
justify-content:center仅控制主轴(默认水平)居中,垂直居中需配合align-items:center,且父容器须有明确高度(如min-height:100vh),否则无效。
-
z-index无效是因为元素未定位(position:static默认值),必须配合position:relative/absolute等才生效;父容器设opacity、transform等会创建新层叠上下文,使子元素z-index仅在内部有效。
-
当数组中所有金额均为负数时,若错误地使用减法累加(如total=total-el.amount),会导致结果符号反转;应改用加法运算才能得到正确的负数总和。
-
details+summary可实现无JS语义化树形菜单,支持键盘和屏幕阅读器,但IE不支持;需用JS实现搜索联动和状态同步,并严格保持DOM、open属性与aria-expanded/aria-hidden一致。
-
本文介绍在多屏幕环境中(如三块独立显示器)动态控制不同表格的显示逻辑,并实现跨窗口/标签页的数据实时同步,适用于需共享状态的前端应用。
-
原生HTML表格无法排序,因HTML仅负责结构展示,不具备动态交互能力。需通过JavaScript为表头绑定点击事件,获取行数据并按指定列排序,再重新插入DOM。常见做法是使用localeCompare处理文本排序,数字则需转为Number类型避免错误。也可借助TableSorter、DataTables等第三方库简化开发,自动实现排序及分页、搜索等功能。注意中文排序兼容性、升/降序状态记录及异步数据加载时机,确保功能正确稳定。
-
React中CSSModules类名必须通过styles对象访问,不可直接拼接字符串;classnames可安全合并动态类名,但所有键值须预定义于CSS文件中并经styles映射。
-
用border画三角形可行是因为浏览器渲染时相邻边交界处自动形成斜角,当元素宽高为0且仅单边有色、其余三边transparent时,该斜角即呈现为等腰直角三角形;这是CSS规范行为,现代浏览器均稳定支持。
-
z-index对float元素无效是因为只有定位元素(position非static)才能创建层叠上下文,浮动元素需配合position:relative等才能使z-index生效。