-
JavaScript对象解构重命名的正确写法是原属性名:新变量名,如const{name:userName}=obj;冒号左为字面量键名,右为合法标识符;可结合默认值写作原名:新名=默认值;嵌套时重命名仅作用于当前层级。281 收藏 -
GET将参数拼在URL后,POST放在请求体中;GET可缓存、有长度限制、幂等,适合获取数据;POST无长度硬限、非幂等,适合状态变更;GET不支持文件上传,POST需设enctype;后端需分别从query和body取参。111 收藏 -
nomodule属性不能直接“降级”旧脚本,因其设计意图是排除而非回退:仅在不支持type="module"的浏览器中执行,现代浏览器完全跳过,且不触发任何兼容逻辑。348 收藏 -
先学元素、类、ID和通配符选择器——这是最短路径;跳过它们直接学伪类或属性选择器,90%新手会在调试时卡在“为什么没生效”上。298 收藏 -
需在HTTPS或localhost下运行,检查浏览器支持并请求video权限;获取流后赋值给video元素;用Canvas截图;用MediaRecorder录制视频;错误时提示用户手动授权或检查设备。262 收藏 -
JavaScript解构赋值本质是从数组或对象中按结构提取值并绑定到变量,不创建新对象/数组;支持默认值、重命名、嵌套解构,但需规避误用如未校验空值、错误使用rest参数位置等。490 收藏 -
高阶函数是接受函数为参数或返回函数的函数;JavaScript中map对每个元素调用回调生成新数组,不修改原数组;reduce按序累积计算,返回单一值;二者常组合使用实现先转换后聚合的逻辑。486 收藏 -
async函数需搭配await才能体现价值,因await可暂停执行等待Promise解决,实现类似同步的异步控制流;单独使用仅自动包装返回值为Promise,无法处理异步等待。258 收藏 -
闭包本身不会直接导致内存泄漏,但不当使用(如结合全局变量、DOM引用、定时器或事件监听器)易使对象无法被回收;关键在识别并切断非必要强引用,通过置null、移除监听器、清除定时器等手段释放。200 收藏 -
JavaScript截至2024年无原生异步管道操作符,但可通过自定义pipeAsync函数、await链式变量赋值或fp-ts等库实现异步流程组合。337 收藏 -
发布-订阅模式通过事件中心实现对象间解耦,JavaScript中可创建EventEmitter类,提供on、off、emit方法支持事件订阅、取消与发布,并可通过once实现一次性监听,适用于组件通信、状态响应和模块解耦等场景。489 收藏 -
移动端侧边栏应通过媒体查询(如@media(max-width:767px))隐藏,默认display:none,主内容区设width:100%;用“☰”按钮触发抽屉式展开,侧边栏fixed定位+transform过渡+遮罩层;需支持Esc/点击遮罩关闭、键盘导航及读屏适配。227 收藏 -
使用Flexbox的gap和flex-wrap可实现响应式列表布局,gap统一控制项目间距,避免margin问题,flex-wrap允许项目自动换行,结合justify-content优化对齐,通过媒体查询在不同断点调整gap值,适配多设备显示,提升布局灵活性与美观性。101 收藏 -
sticky定位失效主因是父容器未提供滚动上下文,需设明确高度且内容溢出;top值应等于元素原上边距而非0;多层嵌套时祖先的transform等属性会破坏粘性;旧版iOS/Chrome需兼容处理。125 收藏 -
响应式图标布局通过Flexbox的gap属性和媒体查询实现多设备适配,使用flex-wrap换行、gap控制间距,并在不同断点调整图标尺寸与排列方式,提升布局美观性与稳定性。498 收藏