-
TensorFlow.js是Google推出的JavaScript库,可在浏览器或Node.js中运行机器学习模型,支持WebGL加速和GPU计算,适用于实时推理与交互式AI应用;它完全用JavaScript编写,前端开发者易上手,可训练模型或加载已转换的TensorFlow/Keras模型,与React、Vue等框架兼容;通过npm安装并导入后,可实现如线性回归等简单模型训练;支持图像分类(MobileNet、ResNet)、自然语言处理、姿态识别(PoseNet、BodyPix)及生成模型(GANs)
-
表单提交关键在name属性和submit绑定——无name字段后端收不到;button需type="submit"且在form内,form需action;inputtype决定校验、键盘等行为;checkbox/radio须设value;JS拦截需preventDefault。
-
隐式类型转换在JavaScript中常见于==比较、字符串拼接和条件判断,如0==false为true、5+"px"得"5px",且if("0")为真;特殊情况下null与0、false比较均不等,而[]==![]却为true,因对象转原始值规则导致;为避免风险,应使用===、显式转换类型并提前校验数据。
-
字体路径错误和font-display缺失是@font-face失效主因;路径须相对CSS文件,优先用link引入字体,声明woff2/woff双格式并添加font-display:swap避免文字闪动。
-
焦点捕获(trapfocus)是手动限制键盘Tab键在模态框内循环聚焦的技术,因HTML原生不支持且dialog元素不自动限制Tab范围,必须用JS监听keydown、判断首尾可聚焦元素并强制focus,以满足WCAG2.1AA可访问性要求。
-
currentColor是CSS关键字,代表元素自身的color计算值;它使SVG图标通过fill/stroke使用currentColor并配合color设置即可自动响应文字颜色变化,包括伪类、JS等动态场景。
-
~选择器用于选中某元素后所有同级兄弟元素,如.container>div~div{margin-top:16px;}可为非首个div添加上边距,实现均匀间距且避免首尾冗余空白。
-
Less编译后CSS不热更新,需检查构建工具是否监听.less文件:Webpack需配置style-loader(hmr:true)、css-loader、less-loader链路完整;Vite需启用vite-plugin-less;Parcel需确认未禁用transformer-less。
-
JavaScript没有真正的反射机制,其所谓“反射”实为Object方法、Reflect对象和Proxy共同提供的对象结构探测与行为拦截能力,核心在于控制访问方式而非语言级元数据操作。
-
WebWorker适合处理大体积JSON解析、结构化缓存反序列化、缓存数据聚合/过滤三类CPU密集型操作;需通过postMessage通信,主线程中转更新响应式状态,并注意消息体限制、Worker复用及组件卸载清理。
-
flex-basis是分配空间前的初始基准,非固定值;优先用0px而非0%,因0%在旧版Safari中可能回退为auto导致布局错乱,且需配合min-width:0解除隐式最小尺寸限制。
-
骨架屏是页面数据加载前的灰色轮廓占位,微信开发者工具可自动生成skeleton.wxml与wxss文件,通过wx:if控制显隐,需随页面布局更新而同步调整。
-
eval在JavaScript中于当前作用域执行字符串代码,导致作用域污染、变量覆盖或泄露,且无法隔离;应优先使用JSON.parse、Function构造器或白名单映射等安全替代方案。
-
用grid-template-rows:0fr→1fr可实现平滑高度过渡,因fr是可插值弹性单位;需满足三前提:容器有确定高度上下文、显式声明grid-template-rows、内容区overflow:hidden。
-
padding-top/bottom百分比按包含块宽度计算,而非高度,是为了避免layout循环依赖;CSS规范强制统一锚定宽度基准以确保布局可解。