JS面向对象编程(一):对象

270 阅读2分钟

序言

  人生路漫漫,你还在为经常被别人发狗粮而发愁吗?你还在为没有对象而焦虑吗?连js都有对象了,你还在等什么?赶快来new一个吧!

你需要一个对象

1.我们在学习JavaScript的时候,在数据类型这节发现JavaScript有一个引用数据类型叫对象;而我们要学习的对象和这个对象有什么关系呢?

  是包含关系,数据类型中的对象是我们所说的对象的子集;因为在JavaScript中,几乎所有的事物都是对象(来不及解释了,先上车!);

2.什么是JavaScript对象?

  JavaScript 对象是拥有属性和方法的数据;
  创建 Object 实例的方式有两种。第一种是使用 new 操作符后跟 Object 构造函数,例如:

var person = new Object(); 
person.name = "小明"; 
person.age = 12; 

  另一种方式是使用对象字面量表示法。对象字面量是对象定义的一种简写形式,目的在于简化创建 包含大量属性的对象的过程:

var person = { 
 name : "Nicholas", 
 age : 29 
}; 

3.什么是属性、对象和方法?举个栗子:

var car = { 
 color: white;, 
 weight: "1650kg",
 start: function(){ 
    alert("The car has been started");
 },
 stop: function(){ 
    alert("The car has stopped");
 } 
}; 

  我们定义一辆汽车;汽车是一个对象。对象有它的属性,如重量和颜色等,方法有启动停止等
  我们可以用点表示发括号表示法来访问对象的属性和方法

alert(car.color);       //"white" 
alert(car["color"]]);   //"white" 

从功能上看,这两种访问对象属性的方法没有任何区别。但是括号语法的优点是可以通过变量 来访问属性

var propertyColor = "color"; 
alert(car[propertyColor]); //"white" 

  虽然 可以通过创建Object实例或对象字面量来创建单个对象,但这些方式有个明显的缺点:使用同一个接口创建很多对象,会产生大量的重复代码。所以下一节《构造函数》