-
HTML不是编程语言,没有“语句”概念,而是标记语言,仅描述结构与语义;其核心是标签合法性、属性有效性、嵌套合理性,直接影响渲染、SEO与无障碍访问。
-
AST是脱敏混淆的唯一可靠基础,因其能精准识别VariableDeclarator.id等声明节点并结合作用域判断本地绑定,避免正则误改属性名、字符串或全局引用。
-
闭包本身不提供事务能力,但能封装状态、连接和异常处理逻辑,是构建轻量级“原子性回滚”事务模拟层最自然的结构;其核心是将“开始→执行→成功提交/失败回滚”打包为边界清晰、可复用的执行单元,所有写操作必须严格置于闭包内,由框架自动统一控制事务生命周期。
-
XSS攻击主要分为反射型、存储型和DOM型,通过输入验证、输出编码、CSP策略及避免危险JavaScript操作实现多层防御。
-
组合选择器通过联合多个基础选择器更精准定位元素。例如p.red表示同时是段落且有red类的元素;常见形式包括标签+类、标签+ID、类+类,如p.highlight选中带highlight类的段落,.btn.primary选中同时含btn和primary类的按钮;使用时需注意顺序不影响匹配、不可加空格、优先级较高以及避免过度嵌套。
-
能,但必须用gap配合带单位的CSS变量,且Safari14.1+才完整支持;gap不触发动画因规范未要求插值,变量须定义在作用域内并含单位(如12px),不可拼接单位或混用数字与单位。
-
闭包模块本身不能直接同构复用,需借助构建工具适配:Node.js中须封装为CommonJS或ES模块导出,浏览器端可直接通过script引入或打包使用,统一构建流程是实现跨环境复用的关键。
-
::first-line仅作用于块级元素视觉第一行,无法控制第2行或N行;无::second-line等标准伪元素;可用样式有限,且受设备、字体、缩放影响。
-
Vue项目离线缓存异步路由需预缓存带哈希的JS/CSS分块文件,并配置navigateFallback至/index.html,配合history模式与前端路由兜底,确保断网时仍可访问/about等页面。
-
clamp()三个参数需验证生效区间:最小值16px在375px屏下对应2.5vw=9.375px<16px,故取16px;最大值24px在960px屏下2.5vw=24px,超此宽度即锁死24px;真正线性缩放仅发生在约640px–960px之间。
-
不能——SharedArrayBuffer不能直接传递ImageData.data,因其底层为普通ArrayBuffer;必须显式创建SharedArrayBuffer并用一致类型视图(如Uint32Array)包装,且所有Worker需严格统一字节长度与视图类型,否则导致读写错位或像素混乱。
-
页面加载完成分阶段:DOMContentLoaded表示HTML解析完毕、DOM树就绪,可安全操作元素;load事件则需等待所有资源(CSS、图片、iframe)全部加载完成。
-
真实水波效果需JS捕获点击坐标并动态创建span元素,结合CSS动画实现以点击点为圆心的扩散遮罩;必须用getBoundingClientRect()精确定位、设absolute与border-radius:50%、动画后remove元素;推荐@keyframes替代transition以提升控制力和性能,并统一处理touchstart/mousedown事件防多触发。
-
只读属性描述符(writable:false)不能构建微任务运行配置中心,真正起作用的是用只读机制保障配置不可变性,并结合微任务队列控制配置生效时机。
-
size属性仅对type="text"、"search"、"tel"、"url"、"email"、"password"有效,对date、number等无效;它以字符数为单位控制可见宽度,但会被CSSwidth覆盖,现代开发应优先使用CSS控制宽度。