-
使用grid-auto-flow:row可实现按钮自动按行排列,结合grid-template-columns和minmax()能创建响应式多行按钮布局,适配不同屏幕尺寸。
-
实现背景图半透明需用rgba()遮罩或伪元素控opacity:前者在同元素设background-image与background-color:rgba(),后者用::before绝对定位加opacity;禁用容器级opacity以免内容变透。
-
Map比对象更适合缓存容器,因其键支持任意类型(含DOM节点、函数等引用)、严格保留插入顺序、size属性O(1)获取长度、无原型污染风险;Set去重和查存在为O(1)哈希查找,远快于数组O(n)线性查找。
-
JavaScript安全编码的核心是不信任任何外部输入,对用户数据做严格过滤和转义,同时利用现代浏览器机制隔离执行环境。XSS和CSRF是Web前端最常见、危害最大的两类攻击,防御需从前端、后端协同入手,不能只靠单侧措施。防范XSS:从输出上下文决定转义方式XSS本质是恶意脚本被当作HTML/JS/CSS执行。关键不是“过滤输入”,而是“在输出时按上下文正确转义”:HTML内容中插入用户数据:用textContent代替innerHTML;若必须用innerHTML,先通过DOMPurify
-
JavaScript通过生成器函数function*和yield实现协程,调用生成器函数返回生成器对象,执行时遇到yield暂停并返回值,通过next()方法恢复执行且可传参,实现双向通信;生成器保持内部状态,支持惰性求值和分步执行,常用于异步流程控制;为调度生成器协程,需编写执行器函数run,其递归调用next()并处理yield出的Promise,实现类似async/await的异步串行化执行,从而完成合作式多任务调度。
-
JavaScript动态改样式有三条路径:直接修改元素style对象适用于临时单次内联控制;切换className适合复用、可维护及响应式场景;操作CSSStyleSheet规则适合运行时生成主题或全局变量注入。
-
HTML5原生不支持RTSP协议,浏览器video标签仅支持HTTP(S)下的MP4/WebM/Ogg等格式;RTSP需通过服务端转协议(如ffmpeg转fMP4+MediaSource)或WebRTC网关实现播放。
-
Proxy能全面监听对象操作,通过get、set、deleteProperty等陷阱捕获读取、赋值和删除行为,结合Reflect实现默认行为并确保this正确;利用递归与缓存机制可深度监听嵌套对象,动态属性与新增属性自动被拦截,无需额外处理,从而构建精确高效的响应式系统。
-
JavaScript可通过TensorFlow.js、ONNX.js、ml5.js等库实现端侧ML,适合图像分类、姿态估计等场景;也可与Python后端协同,发挥各自优势。
-
flex-grow按权重分配剩余空间,order改变子元素显示顺序。例如flex-grow:2的元素比flex-grow:1的多占一倍空间,order:-1的元素排在最前,二者结合可实现响应式布局调整。
-
答案是调试CSS选择器需结合开发者工具排查匹配失败、优先级冲突等问题。首先检查选择器是否正确命中元素,利用F12工具查看Styles面板及document.querySelector验证;其次分析样式覆盖情况,关注删除线属性和!important影响;通过实时编辑、调整选择器特异性或重构HTML结构优化定位;注意拼写、空格、伪类顺序等常见陷阱,提升调试效率。
-
通过设置transition属性可同时为opacity和transform添加过渡效果,推荐明确列出属性以确保性能与可控性;2.初始状态应使用如translateX(0)或scale(1)等可计算值,避免从none开始导致过渡失效;3.可借助transition-delay实现错峰动画,增强视觉层次;4.虽可用all简化定义,但易引发意外动画,建议仅在简单场景使用。合理配置可实现自然平滑的交互动效。
-