-
call和apply立即执行函数并改变this指向,区别在于参数传递方式;bind返回绑定this的新函数,不立即执行。220 收藏 -
JavaScript中有7个会改变原数组的方法:push()、pop()、shift()、unshift()、splice()、reverse()、sort();其余如map()、filter()、slice()等均不改变原数组。301 收藏 -
浮动导致点击区域错位的本质原因是元素脱离文档流引发父容器塌陷及后续元素上浮;推荐用display:flow-root修复,次选伪元素clearfix,避免overflow:hidden;现代布局应优先使用flex或grid替代浮动。451 收藏 -
对象字面量创建快且兼容JSON,构造函数适合批量创建和继承;字面量方法重复,构造函数通过prototype共享方法;漏new会导致this指向错误。196 收藏 -
使用CSSGrid的auto-fill和grid-gap可实现响应式瀑布流布局,通过repeat(auto-fill,minmax(250px,1fr))创建自动换行列,结合gap设置项间距,利用内容高度差异形成视觉错落,无需JavaScript即可构建美观的类瀑布流效果。390 收藏 -
本文介绍一种轻量、兼容性好且无需复杂框架的方法,使用原生HTML<iframe>实现点击菜单时动态替换主内容区,特别适合老旧设备(如未更新浏览器的Zebra安卓扫描器)和内网静态站点维护。188 收藏 -
grid-template-areas能解决多模块对齐问题,因其将语义位置与视觉布局直接绑定,无需计算行列线,仅通过命名区域和字符串网格形状即可自动对齐同名区域。114 收藏 -
try/catch仅捕获同步错误和显式throw,无法捕获异步拒绝、语法错误、eval错误及未await的Promise错误;需配合.catch()、全局监听或正确await使用。113 收藏 -
JavaScript装饰器是用于修改或增强函数、类等行为的语法糖,非原生标准但被TS和Babel广泛支持;以@开头,本质是接收target、propertyKey、descriptor的高阶函数,可拦截并增强方法逻辑。356 收藏 -
JavaScript深拷贝需创建完全独立的新对象以避免引用共享,常用方法包括:JSON.parse(JSON.stringify())(简洁但类型支持有限)、structuredClone()(现代标准,支持多数复杂类型)、递归手写(可控性强,可定制)、Lodash的_.cloneDeep()(生产环境稳妥选择)。274 收藏 -
答案:通过监听输入事件并操作DOM可实现实时显示用户内容。使用addEventListener捕获输入,textContent更新文本,createElement创建元素,innerHTML支持富文本但需防范XSS,结合模板或Markdown解析实现预览功能,确保安全与交互性。351 收藏 -
本文介绍如何将包含日期键和数值键值对的对象数组,高效转换为统一格式的嵌套对象数组(每个对象含date和count字段),并支持可选的扁平化处理。329 收藏 -
:is()和:where()可简化表单选择器,前者取最高优先级,后者权重为0;[type]含连字符值必须加引号;:checked不匹配indeterminate状态,需用:indeterminate并JS设置;:disabled不覆盖fieldset[disabled]子元素,应使用属性选择器。177 收藏 -
HTML5HistoryAPI的state不加密且不持久化,所谓“加密”需开发者手动实现;应仅存必要标识符并由服务端校验,避免前端加密敏感数据。366 收藏 -
答案:通过HTML结构、CSS样式与过渡动画及JavaScript控制类的添加与移除,实现模态框的淡入弹出与居中显示效果,结合opacity、transform和flex布局完成交互细节。169 收藏