1.概念区别
get是获得属性的一种方法。
set是设置属性的一种方法。
get负责查询,不带任何参数。
set负责设置,是通过参数的形式传递。
2.get和set的定义。
在对象初始化时定义。
在对象定义后定义。
3.各自使用方法。
get和set是方法,所以可以进行判断。
get一般是得到,需要返回。
set是创建,不需要返回。
每一个对象都有一个get和set方法。
如果调用的是对象内部的属性,命名格式是变量名前面添加。
class Test {
num
// setter 方法,setter方法必须传递一个参数进行
set number(val) {
this.num = val
}
// getter 方法,在一个方法钱添加一个get标识,表明这个方法为一个getter方法,getter方法必须返回数据,否则值为undefined
get number() {
return this.num
}
}
var test = new Test()
// 调用number方法来获取值
console.log(test.number())// Uncaught TypeError: test.number is not a function
// getter方法在使用的时候,必须是按一个值来使用
console.log(test.number)
// 调用number方法来进行赋值
test.number(1222)// Uncaught TypeError: test.number is not a function
// 当一个变量来使用
test.number = 12000
console.log(test.number)