Я обновляю свою память с помощью ООП в JavaScript, и я немного запутался.Я просто выбираю один из своих проектов и пытаюсь преобразовать его в ООП.Действительно ли ключевое слово «получить» действительно важно?Давайте посмотрим код ниже:
class Cipher {
constructor (str) {
this.str = str;
}
normalizedPlainText() {
return this.str.replace(/\W/g,'').toLowerCase();
}
size() {
return this.normalizedPlainText(this.str).length;
}
isValid() {
if ( this.size(this.str) >= 50 ) return true;
}
squareRoot() {
return parseInt(Math.sqrt(this.size((this.str))));
}
nbrRows() {
return this.squareRoot(this.str);
}
get nbrCols() {
if ( Math.pow(this.squareRoot(this.str), 2) === this.size(this.str)) return this.squareRoot(this.str);
else return this.squareRoot(this.str) + 1;
}
}
const cipher = new Cipher('Your description gives people the information they need to help you answer your question##8.');
console.log('sqrt '+cipher.squareRoot())
console.log('Nbr rows ' + cipher.nbrRows()) //good output
console.log('Nbr cols ' + cipher.nbrCols) // good output too
При разработке моей программы я задавался вопросом, могу ли я использовать «получить» или нет.Так что O попытался, как вы можете видеть на get nbrCols ().Если я поставлю get nbrRows () и назову его cipher.nbrRows()
, я получу ошибку, если я не изменю способ, которым я называю это, как cipher.nbrRows
.Итак, у меня есть следующий вывод: решать вам.Если вы используете 'get', вызывайте его без () или I, который вы не используете, вызывайте его с ().Я ошибаюсь или мне что-то не хватает?