首页
归档
笔记
树洞
搜索
友言

文章详情

Interesting People Record Interesting.

/ JavaScript / 文章详情

js中的构造函数用法

Sonder
2020-04-14
860字
2分钟
浏览 (2.4k)

构造函数是一种特殊的方法,主要用来在创建对象时初始化对象。每个构造函数都有prototype(原型)(箭头函数以及Function.prototype.bind()没有)属性,这个prototype(原型)属性是一个指针,指向一个对象,这个对象的用途是包含特定类型的所有实例共享的属性和方法,即这个原型对象是用来给实例对象共享属性和方法的。每个实例对象的__proto__都指向这个构造函数/类的prototype属性。

面向对象的三大特性:继承/多态/封装

关于new操作符:

  1. new执行的函数, 函数内部默认生成了一个对象
  2. 函数内部的this默认指向了这个new生成的对象
  3. new执行函数生成的这个对象, 是函数的默认返回值

ES5例子:

复制代码
function Person(obj) {
   this.name = obj.name
   this.age= obj.age
}
// 原型方法
Person.prototype.say = function() {
 console.log('你好,', this.name )
}
// p为实例化对象,new Person()这个操作称为构造函数的实例化
let p = new Person({name: '番茄', age: '27'})
console.log(p.name, p.age)
p.say()
image.png

ES6例子:

复制代码
class Person{
   constructor(obj) {
     this.name = obj.name
       this.age= obj.age
 }
 say() {
     console.log(this.name)
 }
}

let p = new Person({name: 'ES6-番茄', age: '27'})
console.log(p.name, p.age)
p.say()
image.png
下一篇 / 将用户首字母做为头像

🎯 相关文章

💡 推荐文章

🕵️‍♂️ 评论 (0)