Показать сообщение отдельно
  #1 (permalink)  
Старый 20.04.2018, 18:56
Аспирант
Отправить личное сообщение для VyacheslavBozere Посмотреть профиль Найти все сообщения от VyacheslavBozere
 
Регистрация: 18.03.2018
Сообщений: 31

Конструктор объекта
Всем привет! Изучаю JavaScript и столкнулся с недопониманием темы.
Нужно что бы метод plus объекта Vektor вернул сумму двух объектов новым объектом Vektor. Почему через функцию set ошибка не выводится. А если просто объявить конструктор, то выводится. Подскажите пожалуйста.

(function() {
class Vektor {
	constructor(x, y){
		this.x = x;
		this.y = y;
	}
	set(value1, value2) {
	return new Vektor(value1, value2);// Ошибки нет
}

	plus(Vektor){
		/*let newVektor = new Vektor(Vektor.x, Vektor.y); //Ошибка Vektor не конструктор.*/
		let a = this.x + Vektor.x; 
		let b = this.y + Vektor.y;
		Vektor = Vektor.set(a, b);//При использовании сеттера
		return Vektor;
	}
}

console.log(new Vektor(1, 2).plus(new Vecktor(2, 3)));

Последний раз редактировалось VyacheslavBozere, 20.04.2018 в 22:38.
Ответить с цитированием