如何在 JavaScript 中檢查陣列是否為真陣列?


在 JavaScript 中,陣列不是真正的**陣列**。它們是 JavaScript **物件**。因此,當我們嘗試使用**typeof()**運算子來了解它們的型別時,顯示的輸出將是物件。

語法

typeof(operand);

**引數** - **typeof()**運算子接收一個運算元並返回該運算元的資料型別。

在下面的示例中,即使變數'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()**檢查傳遞的引數是否為陣列。如果引數是陣列,則輸出**true**,否則輸出**false**。

語法

Array.isArray(array);

在下面的示例中,陣列'a'和物件'b'透過**Array.isArray()**方法傳遞。此方法對它們進行了檢查,並分別顯示了**true**和**false**作為輸出。

示例

線上演示

<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

更新於: 2020年6月29日

127 次檢視

啟動您的 職業生涯

透過完成課程獲得認證

開始學習
廣告

© . All rights reserved.