-
let和const的核心区别在于能否重新赋值:const禁止重新赋值但允许修改对象内部属性,二者均有块级作用域;var无块级作用域且存在变量提升。
-
移动端弹窗被截断主因是viewport设置错误、fixed弹窗未用max-height动态约束、box-sizing未设为border-box及尺寸单位使用不当;应配置正确viewport、用max-height:80dvh+overflow-y:auto、全局box-sizing:border-box,并结合媒体查询兜底。
-
box-sizing:border-box未生效最常见原因是选择器权重不足或被更高优先级规则覆盖,如框架样式中含!important;height计算不准常因父容器无高度导致百分比失效,或受flex/grid、transform等影响;需用offsetHeight获取真实总高,注意SSR和隐藏元素限制。
-
Promise链式调用通过.then()串联异步操作并统一.catch()错误处理,async/await则以同步语法简化异步流程,支持自然条件分支和try/catch错误捕获,二者互补使用。
-
将HTML5文件保存为.html格式并双击用浏览器打开可直接预览;2.使用代码编辑器如VSCode配合LiveServer插件实现自动刷新预览;3.对于涉及JS请求等复杂功能,需通过Node.js安装http-server搭建本地服务器,在http://localhost:8080访问以避免跨域问题。
-
TypeScript因静态类型系统提升大型项目可维护性与协作效率,支持渐进迁移并兼容JavaScript生态,结合现代开发工具增强代码可读性,降低重构风险,统一团队规范,尤其适配复杂架构与主流框架,长期收益显著。
-
剩余参数(...)用于函数形参末尾收集多余实参并生成真数组,扩展运算符(...)用于调用、赋值等场景展开可迭代对象;二者写法相同但位置与作用相反,混用将报错。
-
答案:统一使用border-box盒模型,采用相对单位和现代布局技术实现响应式设计。通过设置box-sizing:border-box、使用百分比或rem等相对单位、结合Flexbox与Grid布局,并合理调整padding与margin,确保元素在不同屏幕尺寸下稳定呈现,避免溢出和计算偏差,提升响应式布局的灵活性与可维护性。
-
内联关键CSS可缓解FOUC问题,即仅将首屏必需样式(如导航栏、标题、布局容器等)提取并内联至<style>标签,避免全量CSS或@import/@font-face,配合preload、font-display:swap及defer/async脚本效果更佳。
-
最直接有效的方法是用CSS的box-shadow配合display:block;需避免overflow:hidden截断阴影,控制v-offset和blur实现贴边效果,圆角或透明图推荐filter:drop-shadow()。
-
答案:优化Canvas性能需减少绘制调用、仅重绘变化区、避免频繁像素操作、使用requestAnimationFrame、优化图像绘制。核心是“少画、准画、快画”,通过合并路径、分层管理、缓存和预加载等手段提升渲染效率。
-
CSS加载闪烁(FOUC)是指HTML先渲染无样式的结构,待CSS下载解析后页面突然跳变成最终样式。优化需三管齐下:内联首屏关键CSS(≤12KB)、预加载剩余关键CSS(rel="preload"as="style"+onload回填)、非关键CSS用media属性延迟加载。
-
本地双击打开HTML文件时video标签无法加载本地视频,因浏览器禁用file://协议下的资源加载以保障安全;需通过本地服务器或input文件选择方式解决。
-
必须给父容器设置display:flex,justify-content:space-between才生效;它将可用空间均分给项目间间隙,而非每个项目;实现视觉均匀推荐flex:1或space-evenly(兼容性需注意)。
-
viewportmeta标签必须设为<metaname="viewport"content="width=device-width,initial-scale=1.0">,否则移动端浏览器默认按约980px虚拟视口渲染,无法实现1:1显示;CSS需用响应式单位(rem/em)、max-width、SVG等适配dpr与屏幕尺寸,真机测试不可替代。