ECMAScript中的对象其实就是一组数据和功能的集合。 ECMAScript中Object是所有对象的基础。 理解:Object类型是所有它的实例的基础,换句话说,Object类型所具有的任何属性和方法也同样存在于更具体的对象中。 Object的实例都具有以下属性和方法 1.Constructor:保存着用于创建当前对象的函数 2.hasOwnProperty(propertyName):用于检查给定的属性在当前对象实例中(而不是原型中)是否存在。其中作为参数的属性名必须以字符串指定 3.isPrototypeOf(object):用于检查传入的对象是否是另一个对象的原型 4.toLocalString():返回对象的字符串表示,该字符串与执行环境相对应 5.toString():返回对象的字符串表示 6.valueOf():返回对象的字符串、数字或布尔值表示。通常与toString()方法的返回值相同
全局对象
全局对象在JavaScript中有着重要的用途: 全局对象的属性是全局定义的符号, JavaScript程序可以直接使用,当解释器启动时,它将创建一个新的全局对象,并给它一组定义的初始属性: 全局属性,比如undefined,Infinity 全局函数,比如parseInt() 构造函数,比如Data(), 全局对象,比如Math和JSON包装对象
看这样一个例子:字符串既然不是对象,为什么它会有属性呢?只要引用了字符串s的属性,JavaScript就会将字符串值通过调用new String(s)的方式转换成对象, 同字符串一样,数字和布尔值也有相应的方法。其他类似的包装类:
SyntaxError
ReferenceError
TypeError
…
属性以及相同的值,他们也不是相等的。我们通常将对象称为引用类型,对象的值都是引用,对象的比较也是引用的比较,当且仅当他们引用同一个基独享,他们才相等;