在开发中,有时候需要检测变量的类型是否为数组。例如,在函数中,要求传人的参数必须是一个数组,不能传人其他类型的值,否则会出错,所以这时候可以在函数中检测参数的类型是否为数组。
- 使用 ‘’Array.isArray (数组对象)‘’语句来判断,如果是数组则返回 true
- 使用 ‘’数组对象.constructor === Array‘’语句来判断
- 使用 ‘’数组对象 instanceof Array‘’语句来判断
var arr= [];
var obj = {};
第一中检测方式
console.log(arr instanceof Array) // 输出结果: true
console.log(obj instanceof Array) // 输出结果: false
第二中检测方式
console.log(Array.isArray(arr)) // 输出结果: true
console.log(Array.isArray(obj)) // 输出结果:false
第三中检测方式
console.log(arr.constructor === Array) // 输出结果: true
console.log(obj.constructor === Array) // 输出结果: false