JavaScript เองไม่ได้ระบุว่าตัวแปรเป็นค่า NULL หรือไม่เนื่องจากตัวแปรอาจเป็นประเภทสตริงวัตถุตัวเลขบูลีน ฯลฯ ประเภทที่แตกต่างกันและวิธีการตัดสินที่แตกต่างกันก็แตกต่างกันเช่นกัน ดังนั้นฉันจึงเขียนฟังก์ชั่นในบทความเพื่อตรวจสอบว่าตัวแปร JS นั้นเป็นโมฆะหรือไม่ ถ้ามันไม่ได้กำหนด, null, '', nan, false, 0, [], {} และ strings ว่าง
การคัดลอกรหัสมีดังนี้:
ฟังก์ชั่น isempty (v) {
สวิตช์ (typeof v) {
กรณี 'ไม่ได้กำหนด':
กลับมาจริง;
กรณี 'สตริง':
if (v.replace (/(^[/t/n/r]*) | ([/t/n/r]*$)/g, '') .length == 0) ส่งคืนจริง;
หยุดพัก;
กรณี 'บูลีน':
ถ้า (! v) กลับมาจริง
หยุดพัก;
กรณี 'หมายเลข':
if (0 === V || isnan (v)) ส่งคืนจริง;
หยุดพัก;
กรณี 'วัตถุ':
if (null === v || v.length === 0) return true;
สำหรับ (var i ใน v) {
กลับเท็จ;
-
กลับมาจริง;
-
กลับเท็จ;
-
ทดสอบ:
การคัดลอกรหัสมีดังนี้:
isempty () // true
isempty ([]) // true
isEmpty ({}) // true
isempty (0) // true
isEmpty (หมายเลข ("abc")) // true
isempty ("") // true
isempty ("") // true
isempty (เท็จ) // true
isempty (null) // true
isempty (ไม่ได้กำหนด) // true