Reference jsfiddle
var obj = {
set bla(k) {
console.log(k);
}
};
JSHint将此标记为“setter is defined without getter”。我确定有一种方法可以关闭它,但为什么这是一个错误呢?我看到JSHint标志的所有内容都有合理的解释。我想不出为什么这是一件坏事。
Reference jsfiddle
var obj = {
set bla(k) {
console.log(k);
}
};
JSHint将此标记为“setter is defined without getter”。我确定有一种方法可以关闭它,但为什么这是一个错误呢?我看到JSHint标志的所有内容都有合理的解释。我想不出为什么这是一件坏事。
getFoo()
它。如果getter和setter总是成对出现,那么您已经将对象简化为面向过程语言struct
。 - Stephen PappSession: {
officername: "Denis Test",
get getOfficername() {
return `${this.officername}`;
},
set setOfficername(name) {
this.officername = name;
}
};
然而,如果getter和setter的名称与下面的相同,并且前缀get
和set
在它们之前,错误将消失:
get Officername() {
return `${this.officername}`;
},
set Officername(name) {
this.officername = name;
}
get
方法,您的错误将消失。var obj = {
set bla(k) {
console.log(k);
}
get bla(){
console.log(obj.bla);
}
};
foo == null
时发出警告 - 这不是非法的,甚至不一定是错误的,但是它更有可能是错误的而不是正确的。