denis_alekss 0 Опубликовано: 14 февраля Жалоба Рассказать Опубликовано: 14 февраля Решил понять смысл get/set, написал небольшой код, правильно ли в нем используется метод get/set или нужно по-другому, если по-другому, напишите пож. как лучше в моем коде. <script> class Beverage{ constructor(options){ this.name = options.name; } returnName() {console.log(this.name)} } class Price extends Beverage { constructor(options){ super(options) this.price = options.price; this.bos = options.bos; } result() {console.log("Напиток " + this.name + " Цена" + this.price + "Директор - " + this.bos)} get Bos(){ {return result()} } set Bos(newBos){ const newbos = newBos.split(' '); this.bos = newbos[0]; this.bos = newbos[1] } } const bev = new Beverage({name: 'Coca-cola'}) bev.returnName() const price = new Price({name: 'Fanta',price: " - 200 евро ",bos: "Стивен"}) price.result() price.bos = "Майкл Джексон" price.result() </script> Цитата Ссылка на сообщение Поделиться на других сайтах
Full-R 6 Опубликовано: 15 февраля Жалоба Рассказать Опубликовано: 15 февраля Дело не в гетере и сеттере. Тут все надо переделывать. Вам пока нельзя extend. Поймите когда это нужно, а когда нет. Цитата Ссылка на сообщение Поделиться на других сайтах
denis_alekss 0 Опубликовано: 15 февраля Автор Жалоба Рассказать Опубликовано: 15 февраля 11 часов назад, Full-R сказал: Поймите когда это нужно, а когда нет. Когда нужно его вообще использовать get/set? Цитата Ссылка на сообщение Поделиться на других сайтах
Full-R 6 Опубликовано: 15 февраля Жалоба Рассказать Опубликовано: 15 февраля (изменено) 1 час назад, denis_alekss сказал: Когда нужно его вообще использовать get/set? Давайте я вам приведу нормальный пример из того же JavaScript, но более раннего поколения, где можно адекватно проследить смысл. Obj = { get future() { return null; }, set data( a = true ) { } }; У гетера нет аргументов. Он как бы и не нужен, но приколу всем у кого JavaScript головного мозга и эйфория от высокого ООП, а сетер ни чего не возвращает. Это можно использовать для смысловой подсветки кода, если вам это нравится. Лично мне, тот class, который вдрочили в ECMAScript с большим опозданием показался гораздо глупее литерал объекта, который умеет делать protected поля и работает с теми же Set и Get. Он и расширяется проще и работает мудрее в плане интеграции генераторов, если они нужны или стрелочных функций, когда this не нужен.Изменено 15 февраля пользователем Full-R Цитата Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения
Присоединяйтесь к обсуждению
Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.
Примечание: вашему сообщению потребуется утверждение модератора, прежде чем оно станет доступным.