-
getElementsByTagName返回HTMLCollection,是类数组对象但无map/filter/forEach方法;需用Array.from或扩展运算符转为真数组,或用for循环遍历;大小写不敏感,只读且不可修改。
-
display:none使width/height完全失效,元素从渲染树移除,尺寸不可读取;inline元素默认忽略宽高;flex/grid容器对齐方式会压制子项尺寸;box-sizing变更影响宽高计算基准。
-
本文详解React轮播背景组件中imageIndex变为NaN的根本原因(模运算%0),并提供优化方案:依赖photos数组的正确effect依赖、移除冗余state、简化索引逻辑,确保背景图稳定循环切换。
-
background-size是CSS中控制背景图缩放的核心属性,需配合background-image使用且仅对设置背景图的元素生效;常见值包括cover、contain、100%100%、指定像素及auto组合,须协同background-position和background-repeat使用;响应式场景推荐媒体查询或clamp();搭配background-attachment:fixed时易失效,应谨慎处理。
-
HTML表格可通过后端预关联或前端JavaScript动态处理实现数据关联显示。常见方式包括:1.后端SQLJOIN操作生成扁平化数据集,前端直接渲染;2.前端通过多API获取数据并用JS匹配关联;3.嵌套子表格展开显示关联信息;4.使用视觉链接导航到关联页面。针对大型数据集,应采用分页加载、虚拟滚动、服务器端筛选及懒加载策略。前端实现时需注意性能优化、内存泄漏防范、数据同步及XSS防护,同时推荐使用现代框架或库提升开发效率和可维护性。此外,卡片布局、图表、树形视图、交互式数据网格和时间轴等现代展示方式也
-
React强调灵活架构与JSX的显式控制,适合定制化开发;Vue提供渐进式框架与模板语法,内置路由和状态管理,更易上手。
-
Symbol.isConcatSpreadable仅在Array.prototype.concat()中控制传入参数是否展开,不参与继承,只检查参数对象自身属性,不沿原型链查找。
-
解构赋值[a,b]=[b,a]是最安全、可读且符合现代JS语义的变量交换写法,其右侧先计算并缓存当前值,左侧按序赋值,不依赖中间变量;但要求a、b已声明且右侧非null/undefined。
-
最稳、最通用的做法是给<img>加display:block和margin:0auto;若图片混排在文本流中,优先用父容器text-align:center。因<img>默认为行内元素,margin:auto对其无效,必须显式设为块级才能触发自动外边距计算;text-align:center失效常因父容器无宽、被浮动/定位覆盖或错误写在<img>自身上;需双向居中时推荐父容器用display:flex;justify-content:center;align-items
-
let和var的主要区别在于作用域、提升行为和重复声明:1.var是函数作用域,let是块级作用域;2.var会变量提升并初始化为undefined,let存在暂时性死区,未声明前访问报错;3.var允许重复声明,let不允许;现代JavaScript推荐使用let和const。
-
<nav>仅适用于站点级或应用级主要导航区块,如顶部主导航、侧边菜单、汉堡菜单、分页器(需满足跳转逻辑连续且加aria-label)、面包屑等;非主导航链接如相关阅读、操作按钮、上一篇/下一篇等不应使用。
-
rgba()在iOSSafari和AndroidChrome中基本可靠,但iOS8等旧版本在border-color、outline等属性中存在渲染异常;#RRGGBBAA仅限较新系统支持;opacity会导致子元素一同变透明,应优先用rgba()控制颜色透明度。
-
浮动徽章错位的根本原因是父容器未触发BFC,需用display:flow-root(推荐)或overflow:hidden创建BFC;徽章定位需按卡片padding、徽章尺寸精确计算负margin;浮动方案仅适用于静态无交互场景。
-
JavaScript错误处理分同步和异步:try-catch捕获同步错误,.catch()或async/await+try-catch处理Promise异步错误;二者分工明确,不可替代,核心在于错误发生的执行上下文不同。
-
不能直接多次newWebSocket(),因会导致多连接并存、资源浪费、消息重复、重连混乱,且跨端不兼容;闭包单例通过IIFE锁定instance实现唯一初始化,但需配合uni.connectSocket、状态清理、指数退避重连等手动补全逻辑。