-
闭包能保留值是因为函数会记住其创建时的词法作用域,即使外部函数已执行完毕,内部函数仍可通过闭包访问并保持对当时变量的引用。1.在异步操作中,由于JavaScript是单线程并依赖事件循环,回调函数往往在外部变量已变化后才执行,导致访问到的是最新值而非预期值;2.使用闭包可通过IIFE为每个回调创建独立作用域,从而“锁定”变量值;3.ES6的let在for循环中每次迭代创建新的绑定,相当于自动实现闭包隔离,使异步回调能正确访问各自循环变量;4.闭包广泛应用于事件处理、模块封装、柯里化等场景,但也需警惕内存泄
-
绝对定位元素的top/left相对于最近的已定位祖先元素(position为relative、absolute、fixed或sticky),无则相对于初始包含块(视口);box-sizing和margin不影响其定位基准,常见问题多因父级未设定位或溢出裁剪导致。
-
行高(line-height)通过控制文本行间距提升可读性与视觉效果,支持无单位数值、带单位长度、百分比和normal等取值;推荐使用无单位数值(如1.5),能基于字体大小按比例计算并良好继承;每行文本形成“行框”,line-height决定其高度,超出font-size的部分均分于文字上下,实现宽松布局;正文建议设为1.5,标题可设1.2~1.3,单行文本垂直居中可通过line-height等于容器高度实现,避免过小行高导致拥挤。
-
箭头函数无自有this、不可构造、无arguments、无yield、返回值需注意隐式规则:其this沿用外层,不能new调用,不支持arguments和yield,单表达式自动返回,对象字面量须用小括号包裹。
-
WeakMap因设计上禁止键枚举与生命周期观测,本质上不可序列化为JSON或普通对象;任何尝试(如JSON.stringify)均会返回空结果,这是语言规范的主动限制,而非实现缺陷。
-
箭头函数无自有this,继承定义时词法作用域的this;不可作为构造函数,无arguments和prototype;支持隐式返回与剩余参数;不适用于需动态this的DOM事件或对象方法。
-
本文介绍如何正确解析Zapier中传入的JSON格式姓名字符串,避免正则误删关键结构,通过JSON.parse()安全转换为对象,再高效提取并拼接“FirstName”和“LastName”字段,最终生成空格分隔的纯姓名字符串。
-
函数组合与管道操作符提案旨在简化JavaScript中函数链式调用,提升代码可读性。通过管道操作符(|>),可将前一个表达式的值作为参数传给下一个函数,实现从左到右的执行顺序,避免传统嵌套写法的阅读障碍。例如,base64String|>atob|>escape|>decodeURIComponent比decodeURIComponent(escape(atob(base64String)))更直观。该特性目前处于TC39第3阶段,尚未被主流浏览器广泛支持,建议通过Babel等工具
-
background-position百分比的原点是背景图自身与容器的相对关系:0%0%为图左上角对齐容器左上角,100%100%为图右下角对齐容器右下角;50%50%使图中心对齐容器中心,但图尺寸与容器差异会导致视觉偏移。
-
根本原因是事件监听未绑定到form元素的submit事件上;必须用addEventListener监听form的submit事件并同步调用event.preventDefault(),且提交按钮应设为type="button"以防回车触发表单。
-
使用JavaScript和Canvas可实现图片滤镜,通过getImageData获取像素数据并修改RGB值,再用putImageData渲染;常见滤镜包括灰度、反色和亮度调整,需注意性能与跨域问题。
-
用记事本写HTML需注意:文件名必须为index.html(小写),编码选UTF-8(无BOM);必备四要素——<!DOCTYPEhtml>、<htmllang="zh-CN">、<head>中<metacharset="UTF-8">(在<title>前)、非空<body>;本地双击打开用file://协议,图片用相对路径,JS模块需本地服务;验证用W3C校验器。
-
HTML嵌套是具有明确父子关系的树状结构,错误嵌套会导致浏览器自动修正、样式失效或JS无法选中元素;<p>仅允许嵌套行内元素,不可嵌套块级元素。
-
JavaScript类中方法的this丢失本质是函数单独调用时上下文丢失;常见于回调传递、解构赋值、异步操作三类场景,可通过箭头函数、bind绑定、类字段语法等方案解决。
-
要让HTML页面更容易被屏幕阅读器访问,核心在于使用语义化HTML、ARIA属性和遵循无障碍最佳实践。1.使用语义化HTML标签(如<nav>、<main>、<article>)赋予内容结构和意义,帮助屏幕阅读器识别页面角色并提供导航选项;2.合理使用ARIA属性(如role、aria-label、aria-describedby)补充复杂UI组件的语义,但优先使用原生HTML;3.确保键盘可访问性,使所有交互元素可通过Tab键聚焦并用Enter/Space激活;4.为