# Math.sign

# 简介

Math.sign(x) 返回一个数的符号:正数返回 1,负数返回 -1,0 返回 0,-0 返回 -0,NaN 返回 NaN。

# JS 实现

const sign = (x) => {
  if (Number.isNaN(x)) return NaN
  if (x === 0) return x // 保留 -0
  return x > 0 ? 1 : -1
}

# 例子

Math.sign(3) // 1
Math.sign(-3) // -1
Math.sign(0) // 0
Math.sign(-0) // -0
Math.sign(NaN) // NaN

# 应用

常用于方向判断、数值归一化、分段函数的分支选择。