JSの変数の前にあるプラス記号+の意味の解析

javascript 変数の前にプラス記号が付いているのをよく見かけます + が、これは何に使うのでしょうか? 実際、これは非常に単純です把变量转换成 number 类型(さらに、変数 - 0 は 、変数の値を数値に変換する方法でもあります)。言うことは多くありませんが、直感的に理解できるように次の例を見てみましょう。

// null:返回 0
console.info(+null) // => 0

// undefined:返回 NaN
console.info(+undefined) // => NaN

// 获取当前的时间戳,相当于`new Date().getTime()`
console.info(+new Date())

// 布尔型转换为整型:true 返回 1,false 返回 0
console.info(+true) // => 1
console.info(+false) // => 0

// 空字符串:返回0
console.info(+'') // => 0

// 忽略前面的 0
console.info(+'010') // => 10

// 16进制转换成 10进制
console.info(+'0x3E8') // => 1000

// 科学计数法自动解析
console.info(+'1e3') // => 1000
console.info(+'1e-3') // => 0.001

// 无法解析的格式:返回 null
console.info(+'1,000') // => NaN

この時点で、これは実際には以下と同等であることを誰もが理解するはずです。

Number(value)

Number 関数のルールに従って値または NaN に変換されます。ルールは大まかに次のとおりです。

  • ブール値: true は 1 を返し、false は 0 を返します。
  • データ値、直接返す
  • null、0を返す
  • 未定義、NaN を返す
  • 文字列の場合は、10 進数値に変換し、先頭の 0 を無視し (16 進数を除く)、空の文字列の場合は 0 を返し、浮動小数点数の場合は浮動小数点値を返します。その他の形式の文字列 (数字で始まるかどうかに関係なく、NaN を返します。文字列内の複数の小数点は、NaN を返します)

おすすめ

転載: blog.csdn.net/sunyctf/article/details/131273674