-
JSON.parse()遇Unexpectedtoken错误主因是字符串含HTML标签、BOM、缩进不规范或字段名缺双引号;应先trim去空、检查不可见字符,优先用response.json();JSON.stringify()会忽略函数/undefined/Symbol等,需replacer处理特殊类型;嵌套JSON须两层解析并try/catch;环境差异上,浏览器fetch自动校验Content-Type,Node.js需手动处理,且均不支持注释和尾随逗号。
-
Promise和async/await是同一底层逻辑的两种使用方式,选择取决于可读性与场景:Promise适合简单链式流程和并行请求,async/await更适合复杂逻辑、条件分支与调试。
-
使用linear-gradient创建渐变按钮,结合Flexbox或Grid实现响应式布局。1.设置45度紫色到蓝色渐变背景,添加圆角、内边距和悬停上移动效;2.Flex容器通过flex-wrap和媒体查询在小屏下切换为纵向排列;3.Grid容器利用auto-fit与minmax实现自适应网格,确保多设备兼容;4.添加视口标签,采用相对单位优化可读性与点击区域,保证深色模式对比度。
-
使用CSS浮动实现两列新闻布局,需将左栏设为float:left、右栏设为float:right,并分配合适宽度(如60%和35%),父容器通过overflow:hidden清除浮动以防止高度塌陷,同时配合媒体查询在小屏幕上切换为单列堆叠,确保响应式兼容性。
-
通过类、属性和子元素选择器结合Flex对齐属性,可精准控制布局;如用justify-content实现主轴对齐,align-items垂直居中,配合媒体查询响应式调整,提升布局灵活性与语义性。
-
HTML5中class属性用于样式控制和JavaScript操作,需在起始标签内以空格分隔多个合法类名;CSS用“.类名”选择器复用样式;应语义化命名并避免冲突;JavaScript可通过classList动态增删切换单个或多个类。
-
首先创建CMD批处理文件扫描目录并生成HTML报告,接着编写包含媒体查询的CSS实现响应式设计,然后修改脚本自动嵌入viewport元标签,最后通过开发者工具和真实设备测试多端显示效果,确保布局适配手机、平板和桌面。
-
fixed元素被盖住的本质是祖先元素意外创建层叠上下文,截断z-index全局比较;需排查opacity、transform、filter等触发属性并移除或替换。
-
边框颜色与背景不协调的常见原因是边框过实,应使用rgba()设置透明度以增强融合感;深色背景用浅色低透明边框,浅色背景用深色低透明边框,并配合border-radius和微弱box-shadow提升整体协调性。
-
fetch返回Promise,网络异常(如断网)会触发catch,但HTTP状态码错误(如500、404)仍返回Response对象,需手动检查response.ok或response.status;直接用.then().catch()无法捕获网络失败,而try/catch配合await才能统一处理异步错误流。
-
Node.js与浏览器事件循环机制不同,前者基于libuv分阶段执行,微任务在阶段切换前清空,后者遵循HTML5规范,微任务在宏任务后立即执行。
-
Map在频繁插入删除、复杂键类型、大量数据遍历时性能优于Object,因内部机制更高效且支持任意键类型;2.Object仅支持字符串或Symbol键,小规模简单数据下因引擎优化可能更快;3.Map遍历顺序确定且原生支持for...of,而Object需额外转换;4.大量数据时Map内存占用更高但性能稳定,优先推荐使用Map。
-
制作HTML表格的核心是使用<table>标签作为容器,其内部通过<tr>定义行,<td>定义单元格;1.使用<thead>、<tbody>和<tfoot>语义化标签区分表头、主体和脚注,提升可读性和辅助功能;2.通过<th>标签定义表头单元格,并可使用colspan和rowspan属性实现单元格的跨列和跨行;3.表格样式应由CSS控制,包括border-collapse合并边框、padding增加内边距、nth-chil
-
display:none使元素脱离文档流且不占空间,布局重排;visibility:hidden保留空间,布局不变,仅视觉隐藏。
-
最稳比例方案是用grid的fr单位,如grid-template-columns:3fr2fr;Flex布局则用flex:310和flex:210;响应式用repeat(auto-fit,minmax(300px,1fr));辅以min-width:0和aspect-ratio保障子项不溢出、高度可控。