javascript-引用类型--Object类型

  引用类型是一种数据结构,本质是数据和功能的集合。引用类型有时也被称为对象定义,因为它们描述的是一类对象所具有的属性和方法。引用类型相当于java里面的类,javascript虽然是一门面向对象语言,但是它不支持传统面向对象语言的类和接口。

  对象是某个特定引用类型的实例,对象可以通过new操作符后跟一个要创建的对象类型的名称来创建。例如:

var o = new Object();

  这行代码创建了Object引用类型的一个新实例,然后将该实例保存在变量o中。它只为新对象定义了默认的属性和方法,仅仅创建Object的实例并没有什么用处,但是要理解一个重要的思想:javascript中大多数引用类型的值都是Object类型的实例。

创建Object实例的方法有两种,一种是使用new操作符后面跟Object构造函数,例如:

var person = new Object();
person.name = "Tom";
person.age = 21;

  另一种方式是使用对象字面量来创建,例如:

var person = {
   name : "Tom",
   age : 21  
};

  使用对象字面量方式创建时,属性名也可以使用字符串形式,例如:

var person = {
   "name" : "Tom",
   "age" : 21  
};

  同时对象字面量也可以用于函数传参,例如:

function showInfo (args) {
    alert("名字:" + args.name + ", 年龄:" + args.age);
}
showInfo({
  name : "Tom",
  age : 21
}); //名字:Tom, 年龄:21

  在javascript中,既能通过点的形式访问对象属性,也能通过方括号形式访问对象的属性,使用方括号形式时,要将属性名以字符串形式放在方括号里面,例如:

var person = {
   name : "Tom",
   age : 21  
};
alert(person.name);       //Tom     
alert(person["name"]);  //Tom  

  Object的每个实例都具有下列属性和方法:

    constructor:保存着用于创建当前对象的函数。

    hasOwnProperty(propertyName):用于检查给定的属性在当前对象实例中是否存在,参数必须以字符串的形式。

    isPrototypeOf(object):用于检查传入的对象是否是当前对象的原型。

    propertyIsEnumerable(propertyName):用于检查给的那个的属性是否能使用for-in来枚举,参数必须以字符串的形式。

    toLocaleString():返回对象的字符串表示,该字符串与执行环境的地区对应。

    toString():返回对象的字符串表示。

    valueOf():返回对象的字符串、数值或布尔值表示。

  PS:此内容根据javascript高程知识总结,用于个人笔记分享。

posted @ 2017-03-20 20:10  MagicCSS  阅读(442)  评论(0编辑  收藏  举报