Если параметры или аргументы нулевые - PullRequest
0 голосов
/ 01 мая 2020

JAVASCRIPT

Здравствуйте, профессионалы, моя единственная идея о том, что некоторые из моих аргументов / параметров в моем классе являются нулевыми, это всего лишь оператор if. Есть ли какой-нибудь эффективный способ или метод вместо оператора if.

Потому что он отображает «неопределенный», если я не помещал туда «оператор if». Я хочу только, чтобы слово 'undefined' не отображалось, если некоторые из моих параметров / аргументов имеют значение null / undefined

class People {
constructor ({fname, mname, 
lname, favs}) {
this.fn = fname;
this.mn = mname;
this.ln = lname;
this.favs = [favs]
this.init();
} 

// Здесь я использую только оператор if.

init(){

if (this.favs === null){

console.log (${this.­fn} ${this.mn} ${this.ln})} else {console.log (${this.­fn} ${this.mn} ${this.ln} ${this.favs} ${this.num} ${this.color} ${this.hobby})}

}
}

const $test = new People (
{
fname: 'Some',
mname: 'Random', 
lname: 'String',
favs: []
}
)

1 Ответ

0 голосов
/ 01 мая 2020

Как насчет использования параметров по умолчанию? Таким образом, вы уверены, что дополнительные параметры инициализируются со значениями по умолчанию (тогда вы никогда не получите неопределенные). Как то так.

class Person {
   constructor (fname, lname, favs) {
      this.fname = fname;
      this.lname = lname;
      this.favs = favs || [];   

      this.init();
   }

   init () {
      console.log(`Hi, I'm ${this.fname} ${this.lname}. My hobbies are: ${this.favs.join(',')}`);
   }
}

const joe = new Person('Joe', 'Doe');
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...