Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Javascript

จะตรวจสอบว่าอาร์เรย์เป็นอาร์เรย์จริงใน JavaScript ได้อย่างไร


ใน javascript อาร์เรย์ไม่ใช่ อาร์เรย์ ที่แท้จริง . เป็นจาวาสคริปต์ วัตถุ . ดังนั้นเมื่อเราพยายามรู้ประเภทโดยใช้ typeof() โอเปอเรเตอร์ ผลลัพธ์ที่แสดงจะเป็นวัตถุ

ไวยากรณ์

typeof(operand);

พารามิเตอร์ - ประเภท() โอเปอเรเตอร์รับตัวถูกดำเนินการและส่งกลับชนิดข้อมูลของตัวถูกดำเนินการ

ในตัวอย่างต่อไปนี้ แม้ว่าตัวแปร 'a' จะเป็นอาร์เรย์ แต่ typeof() ตัวดำเนินการส่งคืนผลลัพธ์เป็นวัตถุเพราะโดยทั่วไปทุกอาร์เรย์เป็นวัตถุ

ตัวอย่าง

<html>
<body>
<script>
   var a = [1,2,5,"hello"];
   document.write(typeof(a));
   var b = {};
   document.write("</br>");
   document.write(typeof(b));
</script>
</body>
</html>

ผลลัพธ์

object
object

ไม่เหมือนกับ typeof() โอเปอเรเตอร์ Array.isArray() ตรวจสอบว่าพารามิเตอร์ที่ส่งผ่านเป็นอาร์เรย์หรือไม่ หากพารามิเตอร์เป็นอาร์เรย์จะให้ จริง เป็นผลลัพธ์อื่น เท็จ เป็นผลลัพธ์

ไวยากรณ์

Array.isArray(array);

ในตัวอย่างต่อไปนี้ อาร์เรย์ 'a' และวัตถุ 'b' ถูกส่งผ่าน Array.isArray() กระบวนการ. วิธีการนี้กลั่นกรองและแสดงผลว่า จริง และ เท็จ เป็นเอาต์พุตตามลำดับ

ตัวอย่าง

<html>
<body>
<script>
   var a = [1,2,5,"hello"];
   var res1 = Array.isArray(a);
   document.write(res1);
   document.write("</br>");
   var b = {};
   var res2 = Array.isArray(b);
   document.write(res2);
</script>
</body>
</html>

ผลลัพธ์

true
false