-
line-clamp需配合display:-webkit-box和-webkit-box-orient:vertical使用,仅WebKit有效;Firefox需JS测行数fallback;展开动画宜用scrollHeight计算高度而非max-height;SSR需服务端预估+客户端校准。
-
JavaScript数据验证常用正则表达式(RegExp)来匹配字符串格式,判断输入是否符合预期规则,比如邮箱、手机号、密码强度等。核心是用test()或match()方法结合预定义的正则模式进行校验。常见字段的正则验证写法直接在表单提交或输入事件中调用验证函数,返回布尔值即可判断是否合法:邮箱验证:/^[^\s@]+@[^\s@]+\.[^\s@]+$/——确保含一个@、至少一个点,且前后非空格或@符号手机号(中国大陆):/^1[3-9]\d{9}$/——匹配
-
必须用watch监听路由参数变化以触发重新请求,推荐精准监听特定参数(如route.params.id)并设immediate:true;需手动清理旧状态、取消请求、重置loading和数据。
-
HTML5<video>标签本身无硬性文件大小限制,但实际播放能力受浏览器、设备内存、网络带宽及视频编码方式共同制约;500MB视频无法播放通常源于加载策略不当或未启用流式传输,而非标签本身限制。
-
align-items:flex-start最可靠,因它对齐子元素主轴起点;需确保父容器display:flex、清除图片vertical-align和文字margin/line-height干扰,IE11用baseline或table-cell兼容。
-
Buffer是Node.js中用于高效操作二进制数据的核心类,适用于TCP流、文件I/O和网络请求。它在V8堆外分配固定大小的内存块,以8位字节存储数据,支持通过索引访问,每个字节范围为0到255。创建方式包括Buffer.from()、Buffer.alloc()和Buffer.allocUnsafe(),例如Buffer.from('hello')将字符串按UTF-8编码为字节序列。Buffer常与Stream配合使用,处理大数据时分块读取,可读流通过'data'事件emitBuffer数据块,便于累
-
JavaScriptDOM操作核心是先选中元素再增删改查,推荐使用getElementById、querySelector、querySelectorAll等高效选择器,并通过缓存元素、使用classList、DocumentFragment和事件委托提升性能与安全性。
-
答案:前端水印通过Canvas或DOM生成,用于防信息泄露,可结合用户信息动态渲染并监听删除操作,但仅作辅助防护。
-
可通过ActiveX、本地服务器、Electron或自定义协议四种方式在特定条件下实现HTML调用本地EXE程序。
-
浮动元素的margin常“失效”是因为其脱离普通文档流,垂直方向margin被忽略或合并;水平margin通常有效,垂直间距宜用padding或BFC解决;现代布局应优先使用flex或grid。
-
会改变原数组的方法有push()、pop()、shift()、unshift()、splice()、sort()和reverse();map/filter/reduce等不修改原数组,返回新数组,更安全;复制数组推荐[...arr],深拷贝用structuredClone()。
-
跨页面通信有四种方法:一、URL参数传递少量字符串数据;二、localStorage实现同源双向持久化共享;三、postMessage支持跨窗口安全异步通信;四、BroadcastChannel实现同源多页面广播通信。
-
最常见的:hover写法错误是冒号后有空格或选择器主体后有空格,如button:hover和a:hover均错误;需确保伪类紧跟选择器、无空格、元素可交互、transition定义在常态规则中且未被更高优先级覆盖。
-
使用CSSGrid的auto-fit和minmax实现响应式图标网格,通过grid-template-columns:repeat(auto-fit,minmax(80px,1fr))让图标自适应屏幕宽度,结合gap和padding优化间距,在小屏设备可调整minmax最小值为60px及减小gap,并用媒体查询进一步适配,配合图标字体或SVG确保各设备显示良好。
-
npm是JavaScript项目的依赖管理工具,通过package.json声明契约、package-lock.json锁定精确版本,需用命令安装依赖而非手动修改文件,且必须提交lock文件以确保环境一致。