-
Map和Set不是语法糖,而是分别解决键名不限类型的数据映射与自动去重的唯一值集合问题;Map键可为任意类型,按插入顺序遍历;Set仅存唯一值,支持O(1)成员判断;二者均需用for…of遍历,WeakMap/WeakSet适用于弱引用场景。
-
答案:CSS的transition、transform和animation协同工作,transform定义元素空间变化,transition实现属性变化的平滑过渡,animation通过关键帧创建复杂自动动画;结合使用时应明确职责、避免冲突,并优先采用transform和opacity以提升性能。
-
应将重复的hover效果抽离为公共工具类(如.u-hover-effect),统一设置transition与基础交互行为,再通过组合语义化修饰类(如.btn-primary、.card-lift)实现差异化表现,配合BEM命名与Sassmixin提升可维护性。
-
使用innerHTML、DOMParser或insertAdjacentHTML将HTML字符串转为DOM对象,分别适用于简单插入、复杂结构解析和直接插入场景。
-
正则表达式是字符串处理的基础设施,本质是描述字符串模式的语法规则;JavaScript中通过String和RegExp对象原生支持,test()返回布尔值用于判断,match()返回数组用于提取,需注意null与空数组的真值差异。
-
用hover配合transform:scale()实现放大效果时,需设transform-origin:center并避免width/height过渡,以防止错位抖动;对行内元素应统一vertical-align或转为block,确保缩放稳定。
-
实现HTML5局部刷新的五种常用技巧:一、XMLHttpRequest;二、fetchAPI;三、jQueryload();四、FormData+XMLHttpRequest表单提交;五、history.pushState维持URL一致性。
-
用CSS的white-space:pre-wrap属性可保留HTML中原始空格和换行,同时支持自动换行;配合等宽字体更利于对齐,且需检查父级样式是否覆盖。
-
Fetch是XMLHttpRequest的现代化封装,本质仍属AJAX;区别在于Fetch基于Promise、默认不带cookie、HTTP错误不reject、无原生上传进度监听,而XHR支持事件回调、凭证自动携带、上传进度及同步请求(已废弃)。
-
实现网页元素翻转效果的关键在于HTML结构与CSS属性的配合使用,其中backface-visibility用于控制翻转时背面是否可见。首先,通过HTML构建三层结构:外层容器(flip-container)、翻转层(flipper)和前后内容面(front、back)。其次,在CSS中设置.flip-container启用perspective增强立体感,.flipper设置position:relative、transform-style:preserve-3d并定义transition过渡动画。第三
-
高德和百度地图JSAPI在加载方式、权限配置、坐标系、地理编码、覆盖物事件及异步加载判断等方面均不兼容。高德需带v=2.0且开通Web端权限,坐标系为GCJ-02;百度v=3.0兼容性更宽但需勾选JavaScriptAPI服务,且坐标经GCJ-02偏移处理导致点位偏移100–500米;两者地理编码结构、事件绑定语法(onvsaddEventListener)、信息窗打开方式及加载完成监听事件均不同。
-
<p>不可行。*选择器会破坏表单控件的原生样式与可访问性,导致按钮无内边距、下拉箭头偏移、数字输入增减按钮消失等问题;应仅重置布局容器,或采用ModernCSSReset等成熟方案。</p>
-
本文介绍如何绕过预构建的cesium.js,直接以ES模块方式导入Cesium未压缩源码(CesiumUnminified),从而支持断点调试、源码阅读和本地开发定制。
-
localStorage只存字符串,对象需JSON.stringify()存、JSON.parse()取;含函数/undefined/Date/循环引用时会出错,应清理或用structuredClone();Phaser中应在明确存档点(如关卡完成、菜单打开)手动保存,而非update()中频繁调用;多存档需动态key如save_1;IndexedDB仅在数据量大或需事务时必要。
-
使用gap属性统一控制网格间距,并在媒体查询中保持其值一致,可解决列数调整后间距不一致问题。