老师有个问题

来源:3-4 getter 与 setter(1)

vivi_li

2020-06-29 16:15:39

class  p{
   constructor() {
      this._name='123';
   }
   get name(){
       console.log('正在获取name');
       return this._name;
   }
   set name(v){
       console.log('正在设置name');
       this._name=v;
       return this._name;
   }
}
const p1=new p();
// p1.name
p1.name('456')
// console.log(p1.name='456');

这里的name不是方法么 为什么不能直接传值调用?

写回答

2回答

好帮手慕码

2020-06-29

同学你好,可以这么理解。name是p1对象的属性,它有set和get方法,所以调用name属性的时候其实调用的是这两个方法。

祝学习愉快~

0

好帮手慕码

2020-06-29

同学你好,name是属性。要修改值得话,只能通过赋值的形式,如下:

http://img.mukewang.com/climg/5ef9b69909272bd502430081.jpg

如果我的回答帮到了你,欢迎采纳,祝学习愉快~

0
hivi_li
h 不太理解啊 ,这里name指代属性,里面有两个方法 get?set?
h020-06-29
共1条回复

0 学习 · 10739 问题

查看课程

相似问题