关键词

js怎么判断是否是数组的六种方法小结

下面是详细讲解“js怎么判断是否是数组的六种方法小结”的完整攻略。

标题

js怎么判断是否是数组的六种方法小结

正文

在JavaScript中,有许多方法可以判断一个变量是否是数组。下面是六种判断方法的小结。

方法一:使用instanceof

使用instanceof操作符可以判断变量是否是数组。如果变量是数组,返回true,反之返回false。

示例代码:

let arr = [1, 2, 3];
console.log(arr instanceof Array); // true

let str = 'hello';
console.log(str instanceof Array); // false

方法二:使用Array.isArray()

使用Array.isArray()函数可以判断变量是否是数组。如果变量是数组,返回true,反之返回false。

示例代码:

let arr = [1, 2, 3];
console.log(Array.isArray(arr)); // true

let str = 'hello';
console.log(Array.isArray(str)); // false

方法三:使用Object.prototype.toString()

使用Object.prototype.toString()函数可以判断变量是否是数组。如果变量是数组,返回'[object Array]',反之返回'[object Object]'。

示例代码:

let arr = [1, 2, 3];
console.log(Object.prototype.toString.call(arr) === '[object Array]'); // true

let str = 'hello';
console.log(Object.prototype.toString.call(str) === '[object Array]'); // false

方法四:使用constructor属性

使用constructor属性可以判断变量是否是数组。如果变量是数组,返回true,反之返回false。

示例代码:

let arr = [1, 2, 3];
console.log(arr.constructor === Array); // true

let str = 'hello';
console.log(str.constructor === Array); // false

方法五:使用Array.from()

使用Array.from()函数可以将类数组对象转换为数组,如果变量是数组,则转换后结果为数组,反之则为其他类型。

示例代码:

let arr = [1, 2, 3];
console.log(Array.from(arr)); // [1, 2, 3]

let str = 'hello';
console.log(Array.from(str)); // ['h', 'e', 'l', 'l', 'o']

方法六:使用typeof

使用typeof操作符可以判断变量是否是object类型,如果是,则判断是否为数组。

示例代码:

let arr = [1, 2, 3];
console.log(typeof arr === 'object' && arr instanceof Array); // true

let str = 'hello';
console.log(typeof str === 'object' && str instanceof Array); // false

以上就是六种判断数组的方法,可以根据实际需要选择一种适合的方法。

结束语

以上是“js怎么判断是否是数组的六种方法小结”的攻略,希望对您有所帮助。

本文链接:http://task.lmcjl.com/news/10353.html

展开阅读全文