Movatterモバイル変換


[0]ホーム

URL:


MDN Web Docs

此頁面由社群從英文翻譯而來。了解更多並加入 MDN Web Docs 社群。

Array.isArray()

BaselineWidely available

Array.isArray() 函式會檢查傳入的值是否為一個Array

js
Array.isArray([1, 2, 3]); // trueArray.isArray({ foo: 123 }); // falseArray.isArray("foobar"); // falseArray.isArray(undefined); // false

語法

js
Array.isArray(obj)

參數

obj

要檢查的物件。

回傳值

若物件為Array 回傳true;否則回傳false

描述

檢查傳入的物件是否為陣列(Array),如果是便回傳true,否則回傳false

更多細節請參考「Determining with absolute accuracy whether or not a JavaScript object is an array」

範例

js
// 下方都回傳 trueArray.isArray([]);Array.isArray([1]);Array.isArray(new Array());Array.isArray(new Array("a", "b", "c", "d"));Array.isArray(new Array(3));// 小細節:Array.prototype 本身是陣列:Array.isArray(Array.prototype);// 下方都回傳 falseArray.isArray();Array.isArray({});Array.isArray(null);Array.isArray(undefined);Array.isArray(17);Array.isArray("Array");Array.isArray(true);Array.isArray(false);Array.isArray({ __proto__: Array.prototype });

instanceof vsisArray

當檢查Array 實例時,Array.isArray 相較於instanceof 更加推薦,因為它可以穿透iframes

js
var iframe = document.createElement("iframe");document.body.appendChild(iframe);xArray = window.frames[window.frames.length - 1].Array;var arr = new xArray(1, 2, 3); // [1,2,3]// 正確地檢查陣列型態Array.isArray(arr); // true// 有害地,因為它不能在 iframes 之間正常運作arr instanceof Array; // false

Polyfill

如果Array.isArray() 不存在於你的環境,在其他程式碼前執行下列程式碼可建置Array.isArray()

js
if (!Array.isArray) {  Array.isArray = function (arg) {    return Object.prototype.toString.call(arg) === "[object Array]";  };}

規範

Specification
ECMAScript® 2026 Language Specification
# sec-array.isarray

瀏覽器相容性

參見

Help improve MDN

Learn how to contribute.

This page was last modified on byMDN contributors.


[8]ページ先頭

©2009-2025 Movatter.jp