实例属性

来源:3-1 实例属性、静态方法和静态属性

慕芸芸

2023-02-24 14:20:36

        class Person{
            sex='male';
            constructor(name,sex){
                this.name=name;
                this.sex=sex;
            }
        }
        const p=new Person('zs','female');
        console.log(p.sex);

这个获取不到sex='male';是因为被this.sex=sex传参覆盖掉了吗?

写回答

1回答

好帮手慕小李

2023-02-24

同学你好,理解的是对的。

sex='male'属于默认值,也就是说如果constructor中不传递的时候它是默认值。

https://img.mukewang.com/climg/63f858d0092ff8db05170393.jpg

https://img.mukewang.com/climg/63f858d50984b1ad03130104.jpg

如有需要更改的话,则会覆盖默认值。

https://img.mukewang.com/climg/63f859070947590605460371.jpg

https://img.mukewang.com/climg/63f8590b09f2a0b503570159.jpg

一般来说在工作中属性基本上都会写到constructor中,这样以便维护也可以节省其他同事的阅读。

祝学习愉快!

1

0 学习 · 17877 问题

查看课程