-
JavaScript可通过Node.js及专用运行时(如Espruino、Johnny-Five)控制硬件,实现物联网开发。它支持GPIO、I2C等接口通信,以简洁代码操作传感器与执行器,如用Johnny-Five使LED闪烁;Espruino可在微控制器上直接运行JS,实现实时交互与低门槛调试;结合MQTT、HTTP等协议,轻松对接云服务,适合全栈开发者快速构建中小型IoT项目。
-
auto-fit会拉伸空闲轨道填满容器,auto-fill则只按需生成列并留白;实际效果受minmax()最小值、子项尺寸约束及浏览器兼容性共同影响。
-
使用position:fixed可创建固定头部和侧边栏,提升导航便捷性。1.头部设top:0、width:100%并用margin-top避免内容遮挡;2.侧边栏设left:0、height:100vh,主内容通过margin-left腾出空间;3.同时固定两者时,侧边栏top等于头部高度,height用calc(100vh-60px)扣除头部占用区域;4.注意z-index层级管理及移动端兼容性问题。
-
闭包是模块模式实现真正私有的唯一机制,通过作用域隔离使变量无法被外部访问,所有接口函数都依赖闭包引用私有状态,ES6模块底层仍由闭包维护词法作用域。
-
当使用position:absolute或fixed的元素被遮挡时,需结合overflow属性解决显示问题。2.父容器设置overflow:hidden会裁剪脱离文档流的定位元素,应改为visible防止截断下拉菜单等组件。3.在可滚动容器中,overflow:auto或scroll会导致浮层面板被隐藏,可通过将浮层移出父级(如使用Portal)、临时修改overflow或改用position:fixed解决。4.必须合理设置z-index并避免祖先元素意外创建层叠上下文,确保定位元素正确显示在顶层。5.
-
float文字环绕在响应式下失效,因float不感知视口变化,图片缩放后文字仍按旧宽度折行;iOSSafari对float+width:100%渲染不稳定,易导致文字掉至图片下方。
-
left:0没效果是因为元素未设置position属性,只有position为relative、absolute、fixed或sticky时,left才生效;需配合定位上下文使用,否则元素仍处于静态文档流中。
-
z-index可用CSS变量但仅限静态数值,因不支持表达式或单位;需配合position才生效,且变量不创建层叠上下文;推荐分层定义基础值并避免嵌套calc。
-
Word中图片居中需用段落居中(Ctrl+E)或绝对定位,因Word不识别HTML的align和CSS居中属性,仅支持嵌入型图片的段落对齐或高级布局定位。
-
Number.isFinite仅判断值是否为有限的number类型,不进行类型转换;字符串、布尔值、null等非number类型及Infinity、NaN均返回false,与全局isFinite的关键区别在于后者会隐式转换。
-
在Next.jsAppRouter中,应直接在服务端组件(如page.js)中获取数据并作为props传入客户端组件,而非尝试嵌套服务端组件作为子元素——后者会导致React渲染错误。
-
Promise有pending、fulfilled、rejected三种状态,且状态单向不可逆:pending为初始等待态,由resolve/reject触发转为fulfilled或rejected;fulfilled表示成功并传递值,rejected表示失败并携带reason。
-
浮动布局问题表现为父容器塌陷、文字环绕异常等,根源是浮动脱离文档流;应通过触发BFC(如overflow:hidden或display:flow-root)包裹子项,用clearfix伪元素清除浮动,并优先采用flexbox或Grid替代浮动。
-
双击打开HTML文件不生效是因file://协议触发浏览器安全策略,禁用fetch等API;应使用LiveServer或http-server启动本地服务。
-
原生inputtype="color"渲染为系统级颜色选择器,仅支持7位十六进制色值(如"#ff0000"),不支持透明度、HSL、命名色或短格式;Chrome、Edge、Firefox及Safari16.4+支持,旧版Safari不支持;value必须为严格7字符格式,否则回退默认#000000;外观由系统控制,CSS几乎无法自定义。