我正在尝试创建一个console.log对象或数组类型
的函数function whichDataStructure (ITEM){
if (typeof ITEM ==='object'){
console.log ('I am object');
} if (typeof ITEM === 'array') {
console.log ('i am array');
} else {
console.log(' neither');
}
};
答案 0 :(得分:1)
在Javascript中Arrays实际上是一种对象。
您必须使用Array.isArray()
函数来确定某个值是否为数组:
function whichDataStructure(item) {
if (Array.isArray(item)) {
console.log('I am an Array');
} else if (typeof item === 'object'){
console.log('I am an Object');
} else {
console.log('I am of type: ' + typeof item);
}
};
如果它是一个Object,那么在测试之前测试值是否为Array 非常重要。否则它将永远被视为一个对象。