如何区分数组 和 对象?待修改
说明:数组是对象的一种形式 对象是包含属性 和 方法的集合 数组是只包含属性的对象 函数是只包含方法的对象
方法一:Array.isArray(parm)
isArray返回值是布尔类型的 如果传进来的parm是数组,返回true,如果不是数组,则返回false;
const arr = [] // 定义数组 const obj = {} // 定义对象 console.log(Array.isArray(arr)) // true onsole.log(Array.isArray(obj)) // false
方法二:instanceof
instanceof :运算符 关键字
const arr = [] // 定义数组 const obj = {} // 定义对象 console.log(arr instanceof Array) // true console.log(obj instanceof Array) // false 对象不是数组 console.log(arr instanceof Object) // true 数组也是对象 console.log(obj instanceof Object) // true
方法三:constructor
const arr = [1, 2, 3] const obj = {} console.log(arr.constructor()) // [] console.log(obj.constructor()) // {}