js 如何判断一个字符串是否为对象或者数组

JavaScript024

js 如何判断一个字符串是否为对象或者数组,第1张

本来判断一个对象类型用typeof是最好的,不过对于Array类型是不适用的

可以使用 instanceof操作符

var arrayStr=new Array("1","2","3","4","5")

alert(arrayStr instanceof Array)

当然以上在一个简单的页面布局里面是没有问题的,如果是复杂页面情况,入获取的是frame内部的Array对象,可以用这个函数判断:

function isArray(obj) {

return Object.prototype.toString.call(obj) === '[object Array]'

}

hasOwnProperty 方法

该方法会返回一个布尔值,指示对象自身属性中是否具有指定的属性(也就是,是否有指定的键)。

var obj = {name:'jack'}obj.hasOwnProperty('name')// -->true

obj.hasOwnProperty('toString')// -->false