Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> JavaScript

Null แปลงเป็น Number ใน JavaScript ยังไง?

ใช้ Number() แปลง null เป็น Number จะได้ 0

ตัวอย่างโค้ด

<!DOCTYPE html>
<html>
  <body>
    <p>Convert null to Number</p>
    <script>
      var myVal = null;
      document.write("Number: " + Number(myVal)); // ผลลัพธ์: 0
    </script>
  </body>
</html>

Type Conversion Table: null

MethodResultType
Number(null)0Number
String(null)"null"String
Boolean(null)falseBoolean
null + 55Number (Coercion)
null == 0trueLoose Equality
null === 0falseStrict Equality

คำอธิบาย

  • Number(null) === 0 — ตาม Spec: ToNumber(null) = +0
  • ต่างจาก undefined: Number(undefined) === NaN
  • Loose Equality: null == undefined (true), null == 0 (true), null == "" (true)
  • Strict Equality: null === undefined (false), null === 0 (false)

Best Practice

  • ใช้ === (Strict) เพื่อหลีกเลี่ยง Coercion ที่สับสน
  • Check Null ก่อนคำนวณ: const val = num ?? 0 (Nullish Coalescing ES2020)
  • Number() ใช้สำหรับ Explicit Conversion ชัดเจนกว่า +null หรือ parseInt(null)