-
ESLint是成熟灵活的JavaScript代码检查工具,能自动化统一代码风格、降低阅读成本、减少错误并捕获潜在bug;通过三步快速接入:安装、初始化配置、集成编辑器,并需合理设置env、parserOptions、extends和rules。
-
推荐使用transform+transition实现元素平滑移动,因性能更高、动画更流畅。首先通过position定位元素,再用transform:translate(x,y)进行位移,并配合transition设置过渡效果。相比直接修改top/left触发重排的方式,transform由GPU加速,避免页面重绘,尤其适合频繁动画和移动端。例如.movable{position:relative;transition:transform0.4scubic-bezier(0.25,0.8,0.25,1);}
-
行内样式通过style属性直接设置元素样式,适用于单个元素调整;2.内部样式表在head中使用style标签定义页面级样式;3.外部样式表通过link标签引入独立CSS文件,便于多页复用;优先级:行内样式最高,外部与内部样式后加载的覆盖先加载的,推荐优先使用外部样式表。
-
使用Flexbox可解决表单控件对齐问题:1.设置容器display:flex;2.用align-items:center实现垂直居中;3.justify-content控制水平分布;4.配合重置margin、padding、box-sizing和统一字体行高,确保跨浏览器一致性。
-
应使用overflow-wrap:break-word+white-space:normal+明确宽度三件套;word-wrap已废弃,white-space优先级更高,Flex/表格等特殊布局需额外处理。
-
TypeScript通过类型注解和类型推断实现静态类型检查。开发者可显式标注变量、函数参数及返回值类型,如constage:number=25;同时编译器能根据初始值自动推断类型,如constcount=42被推断为number。两者结合提升代码安全与可维护性。
-
应区分HTML属性与DOM属性:getAttribute/setAttribute操作HTML属性(如data-、disabled字符串值),而value、checked等状态属性应直接读写DOM属性,class/style/data-推荐用classList/dataset/style.cssText。
-
原生HTML规范中不存在专门表示“评论区域”的语义化标签,<comment>是无效标签;应使用<section>包裹评论区,每条评论用独立<article>,回复用<aside>,避免深度嵌套。
-
HTML通知仅为前端展示层,真后台推送需ServiceWorker+WebPushAPI;NotificationAPI仅支持页面开启时的桌面通知,iOSSafari完全不支持;WebPush需HTTPS、用户授权、后端VAPID推送服务配合。
-
grid容器上设overflow无效是因为默认不创建BFC,需在子项设min-width:0/min-height:0并配合overflow才能生效,或在网格轨道用minmax(0,1fr)控制弹性。
-
X-UA-Compatible已完全失效,仅对IE8–IE11有效,现代浏览器及Edge均忽略;IE11停更后该标签被弃用,正确设置需放<head>最前或通过HTTP头发送,真正兼容难点在于CSS、JS等底层特性支持。
-
JavaScript原生不支持装饰器语法,@decorator会报错因V8等引擎尚未实现该Stage3提案;元编程主要靠Proxy、Reflect等实现,高阶函数是无需编译的稳妥替代方案。
-
JavaScript没有原生Session对象;sessionStorage是浏览器端临时存储,与服务端Session(如HttpSession)无关;服务端通过Set-Cookie下发sessionId,JS只能操作Cookie字符串,无法访问服务端Session数据。
-
HTML5<inputtype="date">的值始终是YYYY-MM-DD格式字符串,非Date对象;须显式用newDate(value)转换并校验有效性,类型定义应保持string,避免运行时错误与时区陷阱。
-
JavaScript类型转换分隐式和显式两种,隐式转换常发生在+运算符、算术运算、条件判断及==比较中,易引发bug;应优先使用===、Number()、String()等显式转换避免陷阱。