前端技术文章
-
JavaScript操作DOM的核心是精准获取元素并用合适方法更新,常用获取方法包括getElementById、querySelector等;更新内容需区分textContent与innerHTML;修改属性推荐classList和dataset;增删节点需基于父元素操作。313 收藏 -
计算属性名仅用于动态生成对象键名,不能直接合并多数据源字段;真正合并需通过统一接入层、字段映射规则和运行时聚合,并用计算属性名添加来源前缀以避免冲突。313 收藏 -
as关键字用于重命名命名导出,解决名称冲突、提升语义明确性、适配API演进及聚合多源导出;如import{logasutilsLog}from'./utils.js'避免变量重复,import{parseasparseCsv}区分来源,import{loadDataasfetchData}兼容旧调用。313 收藏 -
根本原因是默认盒模型为content-box,padding和border不包含在设置的width/height内,而是额外增加;加padding后总尺寸=内容区+2×padding。313 收藏 -
低代码平台不直接暴露flatMapAPI,但在底层逻辑编排或自定义脚本中可用flatMap高效实现多数据源动态合并与拓扑排序:通过flatMap展开、过滤、映射异构数据源为带优先级的扁平执行单元,并驱动变量聚合节点分组配置,同时需遵守平台约束如兜底值置尾、类型统一和分组数限制。313 收藏 -
role不是“增强可访问性”的万能开关,而是HTML语义缺失时的补救手段;用错比不用更危险,如给原生<button>加role="button"会覆盖默认语义,或给<div>加role="button"却不配tabindex="0"和键盘事件监听,导致键盘不可聚焦、不可触发。312 收藏 -
大型Vue/TS项目应统一导出风格:默认导出聚焦主干(如单组件),命名导出承载扩展(如工具函数、类型、Hook);混合导出需分层清晰,禁用隐式挂载;导入端须语义化命名。312 收藏 -
全局守卫是全站灰度发布的天然入口,通过“识别→判断→分流”闭环实现路由前统一灰度决策,结合元信息、开关服务与动态导航,对业务透明且支持链路一致性。312 收藏 -
:scope只在元素自身的querySelector方法中生效,代表该元素本身;在CSS文件或document.querySelector中无效,且不支持IE,Chrome28+、Firefox32+、Safari15.4+支持。312 收藏 -
优先用overflow-wrap:break-word,它只在单词整体放不下时才断行,优先保全语义完整性;word-break:break-all会无差别切割任意字符,仅适用于日志ID等纯数据场景。312 收藏 -
linkrel="stylesheet"在混合App中常不生效,因WebView对file://协议缓存激进、忽略Cache-Control,且iOS/Android对CSS路径解析不一致;应改用JS动态注入内联样式或绝对路径,并加哈希防缓存。312 收藏 -
Flexbox是实现横向导航栏最直接可控的方式,包含基础横向排列、等宽分布、居中带间隔、右侧功能按钮组合及响应式折叠五种方案。312 收藏 -
maxlength仅对<input>(type为text、search、password、email、tel)和<textarea>有效,按UTF-16码元计数,非安全机制,后端必须二次校验。312 收藏 -
Zapier不解析、不渲染、不执行HTML,仅作纯文本处理;HTML必须预验证格式、使用内联样式、避免外链,并通过CodebyZapier安全注入变量,发送前需按接收方要求编码或转义。312 收藏 -
JavaScript继承有四种模式:1.原型链继承,通过prototype实现方法复用但属性共享;2.借用构造函数,用call/apply复制属性但无法继承方法;3.组合继承,结合前两者,属性独立且方法复用;4.ES6class,语法糖封装原型链,语义清晰且功能完备。312 收藏