-
不能。Intl.Segmenter的granularity:'word'对中文仅按Unicode字符边界切分,返回单字而非语义词,不识别“人工智能”等词汇,仅适合轻量级可读字符数估算,无法替代jieba等语义分词工具。
-
使用map()时漏写return会导致新数组全为undefined,因map依赖回调函数显式返回值;箭头函数单表达式可隐式返回,块级语句必须显式return。
-
fetch是浏览器原生API,轻量但需手动处理错误、Cookie、超时等;axios是第三方库,开箱即用,内置拦截器、自动JSON序列化、超时控制等功能,适合中大型项目。
-
银行卡号掩码处理保留前4位和后4位,中间用星号替代;正则模式为^(\d{4})\d{7,15}(\d{4})$,配合代码动态计算星号数量,兼顾15–19位卡号兼容性。
-
navigator.clipboard.writeText()写入失败的常见原因包括:非安全上下文(非HTTPS且非localhost)、非用户手势触发、异步延迟调用、iframe缺失allow="clipboard-write"属性、浏览器权限静默拒绝、文档未聚焦或标签页非活跃,以及Safari等浏览器需额外权限声明或不支持。
-
虚拟滚动和下拉刷新可以共存,关键在于分离数据加载与视图渲染逻辑:下拉刷新重置数据源并更新,虚拟滚动仅根据当前数据动态渲染可视区域,二者职责分明即可实现流畅响应体验。
-
JavaScript事件是交互的触发机制,需用addEventListener绑定并确保DOM就绪;阻止默认行为用e.preventDefault();重复触发常因监听器重复添加,可用once选项或事件委托解决。
-
标签云必须用<ul>结构并设data-weight属性,归一化为1–4整数档,字号用em或clamp(),布局用flex-wrap,否则失去语义、无障碍与响应式能力。
-
JavaScriptTreeShaking是通过静态分析ES模块import/export依赖图,在打包时移除未使用代码的优化技术,要求使用ES模块、支持该特性的打包工具(如Webpack4+、Vite、Rollup)、无副作用代码,并需配置"sideEffects"字段及规范导出方式,最后必须在production模式下构建并验证生效。
-
CSS.registerProperty是CSSHoudini特性,用于注册带类型、初始值、继承性等元信息的自定义属性,使浏览器能校验值合法性并支持transition/@keyframes动画。
-
threshold仅按可见比例触发,对高矮元素响应不一致且无法保证加载完成;rootMargin通过扩展视口边界实现可控预加载,需带单位(如'200px0px'),配合isIntersecting判断和及时unobserve/disconnect避免重复加载与内存泄漏。
-
设置overflow-y为auto或scroll可解决内容截断问题,1.容器固定高度搭配overflow:hidden会导致溢出内容被隐藏;2.使用overflow-y:auto在垂直方向超出时自动显示滚动条;3.可配合overflow-x:hidden控制横向不滚动;4.需避免子元素的绝对定位或flex布局破坏滚动结构。
-
charset属性仅对外部JS文件生效,优先级低于HTTP响应头和BOM;内联脚本忽略该属性;正确场景限于静态托管且服务器未设置charset响应头时。
-
download属性在IE和Safari中完全不支持,因WebKit/Trident内核未实现该特性;Chrome/Firefox仅支持同源URL且受MIME类型影响;跨域或预览型资源会失效;推荐fetch+Blob+createObjectURL方案并配合服务端Content-Disposition响应头。
-
currentColor是CSS中实时继承元素color计算值的关键字,仅适用于颜色属性,不可用于非颜色上下文或赋值给自定义属性,现代浏览器均支持但需注意属性兼容性与失效静默问题。