JavaScript 如何检查对象是否为数组
在本文中,我们将看到如何在JavaScript中检查给定的对象是否为数组。有两种方法,这些方法是:
- 使用Array.isArray()方法
- 使用typeof操作符
方法1:使用Array.isArray()方法
Array.isArray()方法用于确定传递给该函数的值是否为数组。如果传递的参数是数组,则该方法返回true,否则返回false。
语法:
Array.isArray( obj )
参数:
- obj是JavaScript中的任何有效对象,如map、list、array、string等。
返回值: 如果传入的对象是数组,则返回布尔值true;如果传入的对象不是数组,则返回布尔值false。
示例1: 此示例使用Array.isArray()方法来检查对象是否为数组。
function checkObject() {
const countries = ["India", "USA", "Canada"];
const checkArrayObj = Array.isArray(countries);
console.log(checkArrayObj);
}
checkObject();
输出
true
示例2: 此示例使用 Array.isArray() 函数 检查对象是否为数组。
function checkObject() {
// It returns false as the object
// passed is String not an array
console.log( Array.isArray(
'hello GeeksForGeeks' )
);
}
checkObject();
输出
false
方法2:使用 typeof 运算符
在JavaScript中,typeof运算符以字符串的形式返回其操作数的数据类型,其中操作数可以是任何对象、函数或变量。然而,这种方法的问题在于它不适用于确定数组。
语法:
typeof operand or typeof( operand )
示例:
console.log(
typeof "Geeks" + "\n" +
typeof [1, 2, 3, 4] + "\n" +
typeof {name:'Kartik', age:20} + "\n" +
typeof new Date() + "\n" +
typeof function () {} + "\n" +
typeof job + "\n" +
typeof null
);
输出
string
object
object
object
function
undefined
object
极客教程