表单:null 收敛成 undefined

4 阅读1分钟
a ?? undefined
// 等价于:
a === null || a === undefined ? undefined : a

为什么 null 不直接用?从 JS 语义上讲,null 当然也表示“空”。

但很多表单组件在受控绑定时,对:

  • undefined:通常理解为“未设置/未选择”
  • null:有时会有兼容差异,表现不一定稳定
  • ?? 只处理 null 和 undefined,不会把 0、false、'' 当成空值 所以在 UI 表单里,常常会主动把 null 收敛成 undefined。