我们目前为止大多数引用类型都是Object类型的实例,Object也是ECMAScript中使用最多的一种类型(就像java.lang.Object一样,Object类型是所有它的实例的基础)。
–
Object类型的创建方式、使用
相关代码如下所示:
相关代码如下所示:
//实例化对象
var obj={};//var obj=new Object();
//给对象设定属性值
obj.name="xiaoming";
obj.age=10;
//给对象设置方法
obj.say=function(){
console.info("the dream will be died one day!");
};
//访问对象的属性值和方法
console.info(obj.name+" -------- "+obj.age);
obj.say();
//delete删除对象的属性或者方法
delete obj.name;
console.info("obj.name:"+obj.name);//obj.name:undefined
–
对于Object类型应用for in 枚举循环
//实例化对象
var obj={};//var obj=new Object();
//给对象设定属性值
obj.name='xiaoming';
obj.age=10;
<span style="color:#FF0000;">obj['birth']='1994-10-13';</span>
//给对象设置方法
obj.say=function(){
console.info("the dream will be died one day!");
};
//访问对象的属性值和方法
console.info(obj.name+" -------- "+obj.age);
obj.say();
//delete删除对象的属性或者方法
delete obj.name;
console.info("obj.name:"+obj.name);//obj.name:undefined
//for in 遍历一个js对象 ,attr为obj的属性或方法,obj[attr]为该属性或方法的值
<span style="color:#FF0000;"> for(var attr in obj){</span>
console.info("for in 遍历obj中的属性和方法:"+attr+" "+<span style="color:#FF0000;">obj[attr]</span>);
}
•
Object每个实例都会具有下列属性和方法:
–
Constructor: 保存着用于创建当前对象的函数。(构造函数)
//Constructor保存对象的创建函数
console.info(obj.constructor);//Object()
//Constructor保存对象的创建函数
console.info(obj.constructor);//Object()
–
hasOwnProperty(propertyName):用于检测给定的属性在当前对象实例中(而不是原型中)是否存在。(判断该属性是否存在)
–
isPrototypeOf(Object):用于检查传入的对象是否是另外一个对象的原型。
–
propertyIsEnumerable(propertyName):用于检查给定的属性是否能够使用for-in语句来枚举。
–
toLocaleString():返回对象的字符串表示。该字符串与执行环境的地区对应.
–
toString():返回对象的字符串表示。
–
valueOf():返回对象的字符串、数值或布尔表示。