ใน 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