1、示例
構造函數(shù):
function Person(name,age){
this.name = name;
this.age = age;
this.sayHi = function() {
console.log(`My name is ${this.name},I'm${this.age}`)
}
}
let p1 = new Person('xx', 12)
p1.sayHi(); // My name is xx浪读,I'm 12.
普通函數(shù):
function person(name,age){
this.name = name;
this.age = age;
this.sayHi = function() {
console.log(`My name is ${this.name},I'm${this.age}`)
}
}
person('zz', 13)
person.sayHi(); // My name is zz栈拖,I'm 13.
2牲尺、區(qū)別
- 構造函數(shù)
1宪卿、 一般首字母大寫
2、通過關鍵字new來調(diào)用
3望众、函數(shù)名既是函數(shù)名又是對象類名
4匪补、會創(chuàng)建一個新對象,并將此對象作為返回值
-普通函數(shù)
1烂翰、首字母小寫
2夯缺、直接調(diào)用即可
3赔桌、只是一個函數(shù)渡冻,函數(shù)內(nèi)部沒有返回值,則會返回undefined
3芭碍、調(diào)用構造函數(shù)會執(zhí)行哪些動作
1佳恬、會創(chuàng)建一個新的對象
2捏境、并且改變this的指向,指向這個新對象
3毁葱、執(zhí)行函數(shù)中代碼
4垫言、若函數(shù)沒有返回值或者返回值為基本數(shù)據(jù)類型,則會返回這個新建的對象