通过Java的static,理解JavaScript的prototype

先看两段代码:

Java 代码

public class Dog {
  public static final String type="golden retriever";

  public Dog(String name){
    System.out.println(name + " is a " + type + " dog.");
  }
  
  public static void main(String[] args){
    Dog dog = new Dog("tom_1");
    dog = new Dog("tom_2");
  }
} 

JavaScript 代码

function Dog(name){
  alert(name+ " is a " + this.type +" dog");
}

Dog.prototype.type="golden retriever";

var dog = new Dog("tom_1");
dog = new Dog("tom_2");

共性:

1、都是在构造方法之前就已经初始化了;

2、所有实例对象共享同一个变量;

发表评论

电子邮件地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据