@antpv

Как организовать деструктуризацию внутри класса?

class typing {
	constructor(options) {
		this.{strings, loop, speed, pause} = options;
	}
}
//не работает
  • Вопрос задан
  • 448 просмотров
Решения вопроса 1
Vlad_IT
@Vlad_IT Куратор тега JavaScript
Front-end разработчик
Просто указываете переменную как this.loop

class typing {
  constructor(options) {
    ({strings: this.strings, loop: this.loop, speed: this.speed, pause: this.pause} = options);
  }
}

т.е. такой формат
{название_свойства:переменная, ....}
Скобки () вокруг нужны для того, чтобы JS не думал, что { это начало блока, в выражениях он так не думает.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Как вариант
class typing {
  constructor(options) {
     Object.assign(this, options);
  }
}

class typing {
  constructor(options) {
    const {strings, loop, speed, pause} = options;
    
    Object.assign(this, {strings, loop, speed, pause});
  }
}
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы