【JavaScript】17_面向对象中的方法和构造函数

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>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

名之以父

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值