Основи JavaScript для початківців #25 - Фабричні функції / Конструктори

แชร์
ฝัง
  • เผยแพร่เมื่อ 1 ม.ค. 2025

ความคิดเห็น • 35

  • @man_money_
    @man_money_ ปีที่แล้ว +1

    Супер заняття. Дякую!

  • @denyslysenko9617
    @denyslysenko9617 ปีที่แล้ว +1

    Дякую за чудовий урок! Практичне завдання надихаюче.
    Взяв на озброєння додавання операторів до параметрів функції.
    Лайк з усіх аккаунтів!
    P.S. Як обійти блокування youtube щоб якось додати свій розв’язок я ще не придумав…

  • @immortal601
    @immortal601 ปีที่แล้ว +4

    Нарешті підїхав хороший контент

  • @kateamiinee
    @kateamiinee ปีที่แล้ว +5

    Я ще навіть не закінчила всі ваші відео з html i css, але дуже рада що виходять нові .Дякую за таку працю!

    • @savchukit1454
      @savchukit1454  ปีที่แล้ว +3

      Все для вас, дорогий user-fb9xc7cr1h :)

    • @Terens_Filippovich
      @Terens_Filippovich 11 หลายเดือนก่อน

      І як успіхи?😁

    • @beorhty
      @beorhty 11 หลายเดือนก่อน

      @@Terens_Filippovich ох уж ці нагадувачі з майбутнього)

  • @Svit_means_light
    @Svit_means_light 10 หลายเดือนก่อน +1

    Дякую за урок. Ваше рішення задачі дуже складне. Сподіваюсь скоро буду вирішувати задачі як ви(
    В мене вийшло зробити 100% погано і не правильно але воно працює:
    class WrongSquare {
    showFalse = true
    }
    class RightSquare {
    showTrue = true
    }
    function startGuessing(data, name) {
    let contaiter = document.querySelector('.squares-container');
    let square = document.createElement('div');
    square.className = 'square';
    square.innerHTML = name;
    function endOfVictoruna() {
    let contaiter = document.querySelectorAll('.square-wrong');
    if (contaiter.length > 2) {
    alert('it was your last chance');
    location.reload()
    }
    }
    square.addEventListener('click', () => {
    if (data.showFalse) {
    alert('you clicked on the wrong square')
    square.classList.add('square-wrong')
    endOfVictoruna()
    } else {
    alert('You are win')
    square.classList.add('square-right')
    location.reload()
    }
    })
    contaiter.append(square);

    }
    let squareOne = new WrongSquare();
    let squareWin = new RightSquare();
    startGuessing(squareOne, 1);
    startGuessing(squareOne, 2);
    startGuessing(squareOne, 3);
    startGuessing(squareOne, 4);
    startGuessing(squareOne, 5);
    startGuessing(squareOne, 6);
    startGuessing(squareWin, 7);
    startGuessing(squareOne, 8);
    startGuessing(squareOne, 9);

  • @alexandr7647
    @alexandr7647 ปีที่แล้ว +1

    З практикою заняття вийшло супер. Лайк

  • @reverb2432
    @reverb2432 ปีที่แล้ว +2

    Довго чекав на це)

  • @trln7275
    @trln7275 ปีที่แล้ว +1

    Лайк за музичну паузу

  • @Ра́миАль-Хешан
    @Ра́миАль-Хешан 4 หลายเดือนก่อน

    Если куришь, то нужно делиться с друзьями😆 Пивец

  • @skyspace5747
    @skyspace5747 ปีที่แล้ว +2

    Дивлюся твої відоси виключно заради музично-акапельних пауз

    • @savchukit1454
      @savchukit1454  ปีที่แล้ว +2

      Треба окремий канал заводити під цю тематику, думаю)

  • @АлександрВолошун-э2т
    @АлександрВолошун-э2т ปีที่แล้ว

    нарешті)))

  • @whitenoise1485
    @whitenoise1485 9 หลายเดือนก่อน +1

    Доброго дня, а можна внаступні заняття додавати посилання а то вручну ті посиалння на сайти не дуже виходить написати з першого разу

  • @David-ag84j5
    @David-ag84j5 ปีที่แล้ว +1

    Плануєш зробити курс по Python?

    • @savchukit1454
      @savchukit1454  ปีที่แล้ว +2

      Можливо, в далекому майбутньому. Зараз на фокусі фронтенд

    • @David-ag84j5
      @David-ag84j5 ปีที่แล้ว

      @@savchukit1454 Так Пайтон і у фронтенді можна використовувати, чи ні?

    • @kvaqich
      @kvaqich ปีที่แล้ว +1

      @@David-ag84j5у фронті нічого окрім ЖС немає. Якщо ти маєш на увазі, що Пайтон використовують у веб деві, то так. Але у звʼязці з якимось фреймворком, шаблонізатором та ЖС. На Пайтон пишуть саме бекенд.

  • @pani_Maria115
    @pani_Maria115 ปีที่แล้ว +1

    А чому якщо третя спроба правильна прямокутники не зникають?Надіюсь питання зрозуміле😅

  • @АлександрВолошун-э2т
    @АлександрВолошун-э2т ปีที่แล้ว +1

    написав вам на пошту.

  • @ЮрійІльчишин-л2б
    @ЮрійІльчишин-л2б ปีที่แล้ว +2

    Привіт, я дуже захоплений твоїми відео, ба-більше, я беру з них максимум, нещодавно пройшов твій курс по html I css, зараз закіплюю це все тонною практики. Також хочу спитати чи можна вчити джаваскрипт паралельно з попередніми двома?, заздалегідь дякую тобі за відповідь))

    • @savchukit1454
      @savchukit1454  ปีที่แล้ว

      Звичайно, але краще спершу HTML/CSS )

  • @OlhaTovarnitska
    @OlhaTovarnitska ปีที่แล้ว +2

    контент чудовий, питань нема) а от до музичної паузи таки є - вона, безумовно, прекрасна, єдине цікаво чи ви ці пісні з пам'яті співаєте чи піддивляєтесь слова?)

    • @savchukit1454
      @savchukit1454  ปีที่แล้ว +4

      Нижче моєї гідності було б підглядати, не ображайте мене так більше, будь ласка!

  • @b_e_s_t_e_r_i_o_n
    @b_e_s_t_e_r_i_o_n 11 หลายเดือนก่อน

    У вас дууже складний код вийшов) я не створював класу, використав for of де I

  • @MaxKab
    @MaxKab ปีที่แล้ว +1

    05:36 - любий авторе відео, ми не народжуємося отими всіма поганими словами, ми їми стаємо в процесі зростання

  • @wlogs41
    @wlogs41 ปีที่แล้ว +3

    Слава Україні слава нації

  • @carerra6490
    @carerra6490 ปีที่แล้ว +1

    Віталій, не було в думках зробити репозиторій і по гілочкам розбивати заняття? p.s більше не співайте

    • @savchukit1454
      @savchukit1454  ปีที่แล้ว

      має сенс, але спершу хочу окремий курс з Git створити

  • @cryptobrarry
    @cryptobrarry ปีที่แล้ว

    у console.log можна одразу багато аргументів передавати щоб не писати по 3 рядка

    • @savchukit1454
      @savchukit1454  ปีที่แล้ว +1

      ахах, ніби дитяча помилка, але жив з нею більше 5-ти років))
      Дякую, буду змінювати звичку)

  • @gm_Maker
    @gm_Maker 7 หลายเดือนก่อน

    Через конструктор не вышло...
    сделал иначе:
    function createCeils() {
    let tryWin = 3;
    const winCeil = Math.ceil(Math.random() * 9);
    const wrapper = document.querySelector('.lottery-wrapper');
    for (let i = 0; i < 9; i++) {
    const ceil = document.createElement('button');
    ceil.className = 'lottery-item';
    ceil.innerText = i + 1;
    wrapper.append(ceil);
    }
    const ceils = document.querySelectorAll('.lottery-item');
    ceils.forEach(button =>
    button.addEventListener('click', function () {
    if (button.innerText == winCeil) {
    button.style.backgroundColor = 'green';
    setTimeout(() => {
    alert('You Won 1 000 000 USD');
    }, 100);
    ceils.forEach(button => (button.disabled = true));
    }
    if (button.innerText != winCeil) {
    alert('Try again');
    tryWin--;
    button.style.backgroundColor = 'red';
    button.disabled = true;
    }
    if (tryWin (button.disabled = true));
    alert('You lost :(');
    }
    })
    );
    }
    createCeils();