一、JavaScript 类

JavaScript 是面向对象的语言,但 JavaScript 不使用类。
在 JavaScript 中,不会创建类,也不会通过类来创建对象(就像在其他面向对象的语言中那样)。
JavaScript 基于 prototype,而不是基于类的

二、创建对象

2.1 定义创建对象的实例

实例:使用new Object()的方式
var person = new Person();
person.name =”taowuhua”
person.age=”18”
console.log(person.name)
这个方式可以使用另一个方式进行, 比如:
var person = {
name:”taowuhua”,
age:18
}

2.2 使用函数定义对象,然后创建新的对象实例

使用对象构造器:(函数构造对象)
function person(name ,age){

this.name= name;
this.age =age
}
var myFather = new person(“taowuhua”,18)
console.log(myFather.name)
注意:一旦我们有了对象构造器我们就可以创建对象实例,但是一个已经存在的对象构造器中是不能添加新的属性的。如果想要添加新的属性需要修改构造函数,这样违反了开闭原则,既然这样就没有办法了吗?答案是no
我们可以使用原型,下面会有原型的讲解

javascript添加方法

  1. <script>
  2. function person(firstname,lastname,age,eyecolor){
  3. this.firstname=firstname;
  4. this.lastname=lastname;
  5. this.age=age;
  6. this.eyecolor=eyecolor;
  7. this.changeName=changeName;
  8. function changeName(name){
  9. this.lastname=name;
  10. }
  11. }
  12. myMother=new person("Sally","Rally",48,"green");
  13. myMother.changeName("Doe");
  14. document.write(myMother.lastname);
  15. </script>

三、JavaScript prototype(原型对象)

3.1 所有的javascript对象都会从一个Prototype中继承属性和方法

  • Data对象从Data.prototype继承
  • Array对象从Array.prototype继承
  • person对象从person.prototype继承