Дякую!!! Як завжди, коли ви пояснюєте, то начебто все зрозуміло, що для чого прописується і викликається. Але практичне завдання це для мене із сфери фантастики🙃
Дуже дякую за урок!) Нажаль завдання не виконала заплуталась та не знала як його зробити((( Але завтра буду передивлятись тему знову щоб краще зрозуміти.
Вау, ледве макитру не зломав використовуючи setimeout, розумію що він асінхронний але спочатку не міг допетрити як їого використовувати, він висмикує твій код с потіка. Чстина в таймауті зависає, а код несеться далі.А тут такий чудовий лайфхак 🙂
Привіт! Судячи з прикладу на 12 хвилині, не сказав би, що асінк тільки син. цукор. Все таки виглядає так, що там логіка змінюється, логіка виконання коду і порядку його виведення. Дякую за урок!
Я не роздуплився з завданням і 2 дні сортував масив( Навіть намагався закодити відстань Левенштейна. Потім всеж нагуглив як працювати з методом sort. Було цікаво
Привіт. А якщо у функції filterUsers використати querySelectorAll замість getElementsByClassName, то можна обійтись без спред оператора і вкладання псевдомасива в масив[...document.getElementsByClassName]?
Краще покажи варіанти реалізації затримки перед фільтрацією (щоб на бек не відправляти кожен раз запит при кожній новій букві не дописаного тексту) хоча у відео ти і фільтруєш тільки ті данні які отримав затримка дуже корисна річ
function filterUsers(e) { const userListItems = document.getElementsByClassName("users-list-item"); const searchTerm = e.target.value.toLowerCase(); // Перетворення введеного значення на малі літери for (const item of userListItems) { const userName = item.innerHTML.toLowerCase(); // Перетворення тексту елемента на малі літери if (!userName.startsWith(searchTerm)) { item.classList.add("hidden"); } else { item.classList.remove("hidden"); } } } ось так я зробив
Підкажіть, будь ласка, чим відрізняється (response => response.json()) i (data => data.json())? Не розумію в чому різниця і коли що використовувати Буду дуже вдячна за відповідь!
Привіт і дякую за урок. Але твоя оптимізація не надто хороша тому, що якщо ввести одну літеру то все одно він буде перевіряти той цикл при кожному наступному натисканні))
Автор намагається все розжувати) щоб люди краще все зрозуміли, комц не подобається, то нехай шукає інший канал, де в загальному пробігаються, а не намагаються пояснити
Круте завдання. Дякую за цікавий урок
Було б чудово у майбутньому, подивитися ваше відео про роз'яснення декількох основних у роботі паттернів проектування
"МИ закинули псевдомасив у масив і тут *Я* викликаю..."
командна робота
Дякую!!! Як завжди, коли ви пояснюєте, то начебто все зрозуміло, що для чого прописується і викликається. Але практичне завдання це для мене із сфери фантастики🙃
дякую за матеріал і роз'яснення
Дякуюююю! Як добре, що я вас знайшла ❤❤❤ українською, з гумором, так зрозуміло 👍 клас
у вас дуже класні відоси, все зрозуміло, детально і цікаво! дуже вам дякую!
Привіт! Чудовий вчитель, веселий і пояснюєш цікаво. Дякую! Чекаю нових відео
Контент супер, продовжуй і як завжди я чекаю нове відео)
Контент супер, як завжди. Лайк 🙂
Дуже дякую за урок!) Нажаль завдання не виконала заплуталась та не знала як його зробити((( Але завтра буду передивлятись тему знову щоб краще зрозуміти.
Дуже тобі дякую за працю!
Лайк, підписка і рекомендація усім, хто почне вчити JS! =)
Подяка за корисний контент по скріптам)))
Дякую за нове відео
Супер, знов шрифт більший (краще видно і очі менше втомлюються))
// Величезна подяка за урок!
// Вирішив через map i forEach, а також через подію "input", також для гнучкості фільтрації використав includes.
Вау, ледве макитру не зломав використовуючи setimeout, розумію що він асінхронний але спочатку не міг допетрити як їого використовувати, він висмикує твій код с потіка. Чстина в таймауті зависає, а код несеться далі.А тут такий чудовий лайфхак 🙂
Чекаю продовження
Привіт! Судячи з прикладу на 12 хвилині, не сказав би, що асінк тільки син. цукор. Все таки виглядає так, що там логіка змінюється, логіка виконання коду і порядку його виведення. Дякую за урок!
Я не роздуплився з завданням і 2 дні сортував масив( Навіть намагався закодити відстань Левенштейна. Потім всеж нагуглив як працювати з методом sort. Було цікаво
Давайте попросимо автора про тайпскрипт курс записати українською))
Мало такого контенту українською. Продовжуй !
Коли нове відео? 😊
Я так зрозумів, що в js як хочеш так і пишеш код😅 головне щоб працював, чогось багато способів є😬
Спасибо за урок!
Как сделать выделения совпадающего текства?
мое решение:
const input = document.querySelector('.input')
async function PrintUsers() {
const request = await fetch(urlUsers)
const dataUsers = await request.json()
dataUsers.forEach(user => {
const li = document.createElement('li')
li.textContent = user.name
li.classList = 'user'
usersList.appendChild(li)
})
}
function filterUsers() {
const allUsers = document.getElementsByClassName('user')
const inputText = input.value.toLowerCase()
for (const user of allUsers) {
const userName = user.innerHTML.toLowerCase()
if (userName.includes(inputText)) {
user.classList.remove('hidden')
} else {
user.classList.add('hidden')
}
}
}
PrintUsers()
input.addEventListener('keyup', filterUsers)
input.addEventListener('change', filterUsers)
Друга частина коду трішке важче зайшла.Перша ліпше була так як схоже робили в попередніх уроках.
Які теми ще будуть розглянуті в курсі по JS?
А я використовувала input замість keyup. То виходить цю додаткову перевірку можна було не прописувати на початку функції filterUsers()?
Дивне питання, але що означає метод target в рядку e.target.value ?
Привіт. А якщо у функції filterUsers використати querySelectorAll замість getElementsByClassName, то можна обійтись без спред оператора і вкладання псевдомасива в масив[...document.getElementsByClassName]?
Краще покажи варіанти реалізації затримки перед фільтрацією (щоб на бек не відправляти кожен раз запит при кожній новій букві не дописаного тексту) хоча у відео ти і фільтруєш тільки ті данні які отримав затримка дуже корисна річ
Та, мейк сенс)
!але коли пишеш пошук ім'я в інпут полі з маленької літери,то це не працює,тільки з великої,як це виправити??
function filterUsers(e) {
const userListItems = document.getElementsByClassName("users-list-item");
const searchTerm = e.target.value.toLowerCase(); // Перетворення введеного значення на малі літери
for (const item of userListItems) {
const userName = item.innerHTML.toLowerCase(); // Перетворення тексту елемента на малі літери
if (!userName.startsWith(searchTerm)) {
item.classList.add("hidden");
} else {
item.classList.remove("hidden");
}
}
} ось так я зробив
Підкажіть, будь ласка, чим відрізняється (response => response.json()) i (data => data.json())?
Не розумію в чому різниця і коли що використовувати
Буду дуже вдячна за відповідь!
Все абсолютно те саме, просто різна назва параметру функції. Ви можете називати його як завгодно, хоч cat=> cat.json()
@@savchukit1454 дякую за відповідь!
Якраз почав потроху вивчати JS.
давай контент про React)
на все свій час і воля божа)
👁
Привіт і дякую за урок. Але твоя оптимізація не надто хороша тому, що якщо ввести одну літеру то все одно він буде перевіряти той цикл при кожному наступному натисканні))
А ти репетиторством не думав зайнятись?)
Дуже багато води
Автор намагається все розжувати) щоб люди краще все зрозуміли, комц не подобається, то нехай шукає інший канал, де в загальному пробігаються, а не намагаються пояснити
а якщо зробити так: for (const user of usersListItems) {
if (user.includes(event.target.value)) { ... }}