function Person(name){
this.name = name
this.sayName = function(){
console.log(this.name)
}
}
var p1 = new Person("小明")
var p2 = new Person("小红")
console.log(p1.sayName==p2.sayName)//false
从上图可以看出每个对象的方法是不相等的,是因为每次创造一个新对象时都会重新建立一个新方法,所以当对象变多的时候性能会非常差,所以可以采用下面的方式
function Person(name){
this.name = name
this.sayName = fun//为什么要这样写呢?因为直接写在里面,每次new一个新对象都会重新创建一次,所以浪费内存
}
function fun(){
console.log(this.name)
}
var p1 = new Person("小明")
var p2 = new Person("小红")
console.log(p1.sayName==p2.sayName)//true