ВКАТЫВАНИЯ В JS ТРЕДПривет,Прошел я значит курс по жс на w3 school и обнаружил, что там упустились детали, которые к примеру есть в javascript ru. Почему то в w3 не было ничего про классы (не само понятие, а именно объявление через слово class) и геттеры/сеттеры и я подозреваю, что я упустил еще не мало. Вопрос к тем кто с жс на ты: много ли я упустил или для фронтенд макаки это и не нужно?
Бамп
И вообще, нужно ли ооп во фронтэнде?
Последний бамп надежды
>>172325170ага, нужно, да
>>172324955 (OP)Да пидарас ебливый. Заебали. пиздуй сразу на фрилансру и просись за еду в любой проект. Дальше поймешь твое это или нет.
Чего все такие злые?
>>172326182Я не злой. Говорю - нужно, да. Изучай всё, до чего дотянешься. Станешь не просто макакой как все, а нормальным разрабом. Фронтэнд это не такая уж простая хрень, как думают бэкэндщики. Это вообще сложная хуерга на самом деле.
>>172325170ну вот недавно друг просил ему стилизовать select чтобы помимо кода страны рядом с ним стоял и флажок соответственный. Пока листал ответы в гугле краем глаза понял что по человечески для этого пишется библиотека где как раз и юзаются классы
>>172326412А как обычно делают классы? Через конструктор или через class?
>js>вкатыватьсяЛол, в него уже вкатываться надо, да?
>>172326657Да нет, его с рождения обычно знают. Для совсем отсталых его в школе преподают.
>>172326461А нельзя что ли через switch налепить условий с форматированием этих опшенов?
>>172326704Я посидел почитал две недели, мне зашло.Хули там учить? Вы дауны?
>>172326776Конечно! Один ты гений. Тебе достаточно почитать - и уже всё знаешь. А мы лохи, мы изучать должны. Да и это не язык вовсе, хуйня какая-то для даунов.
>>172326859Я знаю js на базовом уровне и когда мне нужно доштопать энд, я ищу нужную мне информацию за пару минут без проблем.Я правда не понимаю, что в JS ещё и учить надо.Понял принцип ООП, понял синтаксис -- и вперёд.
>>172326907фронт энд*
>>172326738а там нельзя было форматировать ::before по каким-то причинам. Потому все решалось костыльно спанами и их форматированием. Либо я ебло криворукое и делал направильно
>>172326958неправильно*
>>172326907Ну правильно. Просто потому что ты настоящая макака и лепишь всякую хуйню со стэковерфлоу тяп-ляп, лишь бы как-нибудь работало.Вот такие вещи, как ты думаешь, как люди делают? Такие вот копипастеры или все-таки они действительно изучают? Вот безо всякой предвзятости и обид.https://yandex.com/everest/ОП, есть желание - изучай, читай книжки, все правильно делаешь, так держать.
>>172327620Суть вопроса в том, почему на таком, вроде авторитетном сайте такая инфа. Может всё-таки они умышленно не все рассказывают?
>>172327719Они разве заявляют, что дают полную инфу? Я хз, вроде у них вообще просто начальные уровни. Почему бы тебе не "проходить курсы", а взять нормальную книгу?
>>172327798Так ведь у них уроки полноценные и даже сертификация есть по $95
>>172324955 (OP)>не само понятие, а именно объявление через слово classНаверное потому, что это ECMAScript и без костылей (ох, костыли и джаваскрипт, созданы друг для друга) в современных браузерах искаропки не работает.Я на вэбсервере ставил ноду версии 9.2.0 через нештатные средства чтобы у меня синтакический сахар (а class в js это именно сахао) заработал в ноде без необходимости препроцессить код через babel (о боже, нет).Короче, со всей теплотой отношусь к JS, как раз его активно осваиваю на мобилках и на вэбсервере, но таки понимаю тех кто называет JS новым PHP - низкий порог вхождения, архаичные легаси элементы и сверхогромная кодовая база. С той только разницей, что от PHP меня физически воротит, а от JS - нет.
>>172327936То есть в жс здорового человека нет class и get/set?
>>172328137Нет. У жс нет строгой типизации, там цирк с конями.
>>172328137learn.javascript.ru/getters-setters
>>172328158Тогда хорошо, что не стал изучать на жсру, так бы не так понял жс
>>172328158
>>172328281Зачем ты мне это кидаешь? Я это видел, поэтому и создал тред
>>172328287Там же вроде пишут на жсру, что это всё типа новшества, которые нигде не работают, но это всё хуйня на самом деле, потому как если ты пишешь на жс фронтенд, то рано или поздно тебя заебут браузеры и ты воткнёшь бабель. А с ним уже поебать, стрелочками ты коллбэки делаешь или функциями.
>>172328137В ЖС здорового человека оно есть. А вот в браузерах нету, от людей требуют парсить код через babel и упаковывать через webpack, то есть через костыли.
>>172328406Ты имеешь в виду что я буду использовать бутстрап и жаквари и мне не потребуется возиться с классами?
>>172328527Я считал что то что в браузере то и есть жс. Получается на w3 преподается все по стандартам и с расчетом что все будет работать сразу во всех браузерах
>>172328623А, так ты не хочешь с ними возиться? Ну так не возись. А коли хочешь, есть typescript, про него не расскажу, ибо я в рот ебал высеры майкрософта, на которые они потом хуй кладут. Нет, я не прыщеблядь.>>172328701w3 - на фронтэнд просто ориентируются, а жсру видать уже на ноду гайды пишут.
>>172328746Спасибо, теперь все встало на места. Буду продолжать учить на w3 так как планирую еще в php, а не в ноду
Алсо, почитал, что там про геттеры/сеттеры пишут, ну так это хуйня костыльная, как бы просто фунция которая и так и сяк работает. Реальные геттеры/сеттеры несколько иначе пишутся в нормальных языках. Тут же просто что-то вроде перегруженной фунции, типа.
>>172328898Поясни, в чем отличие от нормальной реализации.
Опчик, ты сталкивался с this в процессе изучения?
>>172324955 (OP)https://youtu.be/MSP80nmpZBo
>>172328944Да
>>172326958Jcf select это решает
>>172328977И как понятна его логика?
>>172328929В нормальной ты присваиваешь значение свойству объекта, а внутри при присваивании выполняется метод, а в случае обращения к свойству - вызывается этот метод. Эта механика скрывается в ООП-языках, а тут просто функция пишется с проверкой на параметры.
>>172326657Ясен хуй, это тебе не с++ обоссанный
>>172328898Вот тут посмотри https://learn.javascript.ru/descriptors-getters-setters
>>172329003Да, сразу понял. А что там можно не понять?
>>172329101На практике как? Нет затруднений с использованием?
>>172329056А, ну да. Так и должно быть. Не знаю, насколько это на практике применяется, я таким не занимался.>>172329101Там на практике самое важное усвоить - потерю контекста, по началу может быть заёбно, хотя по гайдам всё понятно, но бывает - забудешь и хер поймёшь - где ошибка.
>>172329149Приведи пример где могут быть трудности? Это же просто обращение к объекту, владеющему блоком кода
>>172324955 (OP)Малаца. В следующий раз сразу записывайся в бизнес молодость, будешь миллионами ворочать без всяких html и css
>>172329239>Приведи пример где могут быть трудности?>Там на практике самое важное усвоить - потерю контекстаКод в туториале - это одно, задачи в работе - это другое.
>>172329344Можешь привести пример самого распространенного случая потери контекста?
>>172329443Нет.
>>172329443Сервис-объект, в нём функция, которая делает ajax-вызов, который вызывает колбэк, который обращается к this сервиса, чтоб вызвать метод сервиса.
>>172329464Вот и я нет
>>172329555Ничего не понял, но думаю, как дойдёт до аяха то пойму
>>172329648Потеря.service.getSomeShit = function() { $.get('/shit/getSomeShit', function(response){ service.consumeShit(response); })}Нет потери.service.getSomeShit = function() { let self = this; $.get('/shit/getSomeShit', function(response){ self.consumeShit(response); })}Примерно так.
>>172329902Что еще за let? Это тоже сахар? Такого не было на w3
>>172327936>в современных браузерах искаропки не работаетне слушайте эту макаку. в современных браузерах ES2015 как минимум работает и давно.и с ноды 4+ (которая 2х летней давности) можно уже было бабель выкидывать если тебе нужен только ES2015 без ES2016-ES2017.
>>172330014Ну это типа var. Я себя потихоньку переучиваю на let const. Это ES-2015. Все кроме IE поддерживают искаропки.
>>172330086У меня ощущение будто изначальную концепцию ломают
>>172330299Потому что изначальная концепция ущербна. А альтернативы нет, потому весь этот сахар и создают, чтоб можно было писать нормально. К тому же между var и let есть разница.
>>172330356Я знаю что есть, поэтому и говорю. Не хочется видеть клон сисярпа
>>172330509В итоге если нужно просто написать маленький скрипт для страницы, то приходится держаться в рамках поддерживаемых браузеров, а если пишешь большой проект, какое-то SPA, то там уже конпеляция, сжатие и т.п. В такой ситуации удобней пользоваться современными стандартами, которые поддерживает бабель.
>>172330652Ну ты же про бэкенд. А я жс только для браузера рассматриваю. Для серьезных проектов php
>>172330716Нет, я про фронтэнд.