下面是详细讲解“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怎么判断是否是数组的六种方法小结”的攻略,希望对您有所帮助。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:js怎么判断是否是数组的六种方法小结 - Python技术站