【JavaScript】18_面向对象中的方法和构造函数
【摘要】 4、方法 <script> class Person{ name = "孙悟空" // sayHello = function(){ // } // 添加方法的一种方式 sayHello(){ console.log('大家好,我是' + thi...
4、方法
<script>
class Person{
name = "孙悟空"
// sayHello = function(){
// } // 添加方法的一种方式
sayHello(){
console.log('大家好,我是' + this.name)
} // 添加方法(实例方法) 实例方法中this就是当前实例
static test(){
console.log("我是静态方法", this)
} // 静态方法(类方法) 通过类来调用 静态方法中this指向的是当前类
}
const p1 = new Person()
// console.log(p1)
Person.test()
p1.sayHello()
</script>
5、构造函数
在类中可以添加一个特殊的方法constructor
该方法我们称为构造函数(构造方法)
构造函数会在我们调用类创建对象时执行
可以在构造函数中,为实例属性进行赋值
在构造函数中,this表示当前所创建的对象
<script>
//原来的方法
// class Person{
// name="孙悟空" // 当我们在类中直接指定实例属性的值时,
// // 意味着我们创建的所有对象的属性都是这个值
// age=18
// gender="男"
// sayHello(){
// console.log(this.name)
// }
// }
// 创建一个Person的实例
// const p1 = new Person("孙悟空", 18, "男")
// const p2 = new Person("猪八戒", 28, "男")
// const p3 = new Person("沙和尚", 38, "男")
// console.log(p1)
// console.log(p2)
// console.log(p3)
//==========================================
class Person {
constructor(name,age,gender){
this.name = name
this.age = age
this.gender = gender
}
}
const p1 = new Person('孙悟空',14,'男')
const p2 = new Person('猪八戒',45,'男')
const p3 = new Person('沙和尚',76,'男')
console.log(p1)
console.log(p2)
console.log(p3)
</script>
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)