Тема, шрифт, мова та інші налаштування інтерфейсу.
Статистика використання. Вимкнена, доки ви її не дозволите.
Реклама та вимірювання реклами. Вимкнені, доки ви їх не дозволите.
ПРО САЙТ
Усі відкриті вкладки сайту
JavaScript · Синтаксис · Початковий рівень
Умовні оператори 2
11 завдань
Додаткова практика з умовними операторами в JavaScript: перевірка строк, довжини тексту, символів, зрізів через методи строк, логічних операторів &&/|| і простих сценаріїв ввода.
Короткий вступ до теми та пояснення перед вправами (вправи нижче):
Завдання з рядками на цьому рівні вимагають знати, які рядкові методи використовувати для перевірок. У JavaScript є зручний набір для цього.
Доступ до символів через дужкову нотацію. JavaScript не має від'ємних індексів, але метод at() має:
```javascript
const text = "JavaScript";
console.log(text[0]); // J — перший символ
console.log(text.at(-1)); // t — останній символ
console.log(text.at(-2)); // p — передостанній
```
Зріз використовує slice(start, end). Синтаксис схожий на Python, але без кроку:
```javascript
const text = "Hello world";
console.log(text.slice(0, 4)); // Hell — перші 4 символи
console.log(text.slice(2, 8)); // llo wo
```
Якщо другий аргумент пропустити — slice йде до кінця рядка.
Для перевірки підрядка і префікса/суфікса:
```javascript
text.includes("@") // true, коли "@" є де-небудь у рядку
text.startsWith("Py") // true, коли text починається з "Py"
text.endsWith("on") // true, коли text закінчується на "on"
```
Всі три чутливі до регістру. "python".startsWith("Py") — false.
Довжина рядка — це властивість, а не метод:
```javascript
text.length // кількість символів — без дужок
```
Поширена помилка — написати text.length() — це викине TypeError.
Користувач вводить рядок.
Якщо довжина рядка більше 10 символів — виведіть перший і останній символ,
інакше — виведіть "Рядок занадто короткий".
let text = "JavaScript course";
Рішення
let text = "JavaScript course";
if (text.length > 10) {
console.log(text[0], text[text.length - 1]);
} else {
console.log("Рядок занадто короткий");
}
// або так можна: зберегти символи у змінні
let text = "JavaScript course";
if (text.length > 10) {
let first = text[0];
let last = text[text.length - 1];
console.log(first, last);
} else {
console.log("Рядок занадто короткий");
}
Користувач вводить рядок.
Якщо рядок починається з літери "A" або "a" — виведіть "Починається з A",
інакше — "Починається з іншої літери". Можна використовувати методи рядків.
let text = "Alice";
Рішення
let text = "Alice";
if ((text.startsWith("A")) || (text.startsWith("a"))) {
console.log("Починається з A");
} else {
console.log("Починається з іншої літери");
}
Користувач вводить рядок.
Якщо довжина рядка більше 8 символів — виведіть перші 4 символи,
інакше — виведіть увесь рядок.
let text = "JavaScript";
Рішення
let text = "JavaScript";
if (text.length > 8) {
console.log(text.slice(0, 4));
} else {
console.log(text);
}
// або так можна: спочатку підготувати фрагмент
let text = "JavaScript";
let part;
if (text.length > 8) {
part = text.slice(0, 4);
} else {
part = text;
}
console.log(part);
Користувач вводить рядок.
Якщо довжина рядка більше 6 символів і останній символ — "!" —
виведіть "Емоційне повідомлення", інакше — "Звичайне повідомлення".
let text = "JavaScript!";
Рішення
let text = "JavaScript!";
if ((text.length > 6) && (text[text.length - 1] === "!")) {
console.log("Емоційне повідомлення");
} else {
console.log("Звичайне повідомлення");
}
// або так можна через метод endsWith
let text = "Привіт!";
if (text.length > 6 && text.endsWith("!")) {
console.log("Емоційне повідомлення");
} else {
console.log("Звичайне повідомлення");
}
let text = "[email protected]";
if ((text.includes("@")) || (text.includes("#"))) {
console.log("Спецсимвол знайдено");
} else {
console.log("Спецсимволів немає");
}
// або так можна: перевіряти символи по черзі
let text = "hello@site";
if (text.includes("@")) {
console.log("Спецсимвол знайдено");
} else if (text.includes("#")) {
console.log("Спецсимвол знайдено");
} else {
console.log("Спецсимволів немає");
}
Користувач вводить ім’я та прізвище.
Якщо і ім’я, і прізвище не порожні — виведіть привітання у форматі: "Привіт, Ім’я Прізвище!" (використайте шаблонний рядок (template literal)),
інакше — "Введіть коректні дані".
let name = "Alex";
let surname = "Smith";
Рішення
let name = "Alex";
let surname = "Smith";
if ((name) && (surname)) {
console.log(`Привіт, ${name} ${surname}!`);
} else {
console.log("Введіть коректні дані");
}
// або без шаблонного рядка, через склеювання рядків
let name = "Alex";
let surname = "Smith";
if (name && surname) {
console.log("Привіт, " + name + " " + surname + "!");
} else {
console.log("Введіть коректні дані");
}
Користувач вводить рядок.
Якщо довжина рядка більша за 10 символів — виведіть фрагмент рядка через slice
з 3-го символу (включно) по 8-й символ (включно),
інакше — виведіть "Недостатньо символів".
let text = "JavaScript course";
Рішення
let text = "JavaScript course";
if (text.length > 10) {
console.log(text.slice(2, 8));
} else {
console.log("Недостатньо символів");
}
Користувач вводить рядок.
Якщо рядок не порожній — виведіть повідомлення: "Перший символ: X, останній символ: Y" (використайте шаблонний рядок (template literal)),
інакше — "Порожній рядок".
let text = "JavaScript";
Рішення
let text = "JavaScript";
if (text) {
console.log(`Перший символ: ${text[0]}, останній символ: ${text[text.length - 1]}`);
} else {
console.log("Порожній рядок");
}
// або так можна: заздалегідь зберегти перший і останній символ
let text = "JavaScript";
if (text) {
let first = text[0];
let last = text[text.length - 1];
console.log(`Перший символ: ${first}, останній символ: ${last}`);
} else {
console.log("Порожній рядок");
}
Користувач вводить рядок.
Якщо довжина рядка від 5 до 10 символів включно —
виведіть "Відповідна довжина",
інакше — "Невідповідна довжина".
let text = "JavaScript";
Рішення
let text = "JavaScript";
if (5 <= text.length && text.length <= 10) {
console.log("Відповідна довжина");
} else {
console.log("Невідповідна довжина");
}
// другий варіант: те саме з окремою змінною length
let text = "course";
let length = text.length;
if (length >= 5 && length <= 10) {
console.log("Відповідна довжина");
} else {
console.log("Невідповідна довжина");
}
Користувач вводить рядок.
Якщо рядок починається з "Java" або закінчується на "Script" —
виведіть "Схоже на JavaScript",
інакше — "Не схоже на JavaScript".
let text = "JavaScript";
Рішення
let text = "JavaScript";
if ((text.startsWith("Java")) || (text.endsWith("Script"))) {
console.log("Схоже на JavaScript");
} else {
console.log("Не схоже на JavaScript");
}
"Програма Привіт - Бувай" Якщо користувач введе: Привіт, привіт, приВіт або ПРИВІТ - відповісти йому "І тобі привіт!" Якщо користувач введе: Бувай, БуВай, і тд - відповісти йому "Адьйос!".
let text = "Привіт";
Рішення
let text = "Привіт";
if (text.toLowerCase() === "привіт") {
console.log("І тобі привіт!");
} else if (text.toLowerCase() === "бувай") {
console.log("Адьйос!");
} else {
console.log("Нє, я не розмовляю з незнайомими людьми! Адьйос!");
}
No split tab
Налаштування cookies
Ми використовуємо необхідні cookies для роботи сайту. З вашого дозволу ми також можемо зберігати налаштування сайту та використовувати аналітичні й рекламні cookies, щоб розуміти використання сайту й підтримувати розвиток проєкту.
* Ви завжди можете змінити свій вибір у налаштуваннях сайту.
Оберіть категорії cookies
Налаштування аналітики
Можна вимкнути аналітику використання платформи. Також можна надіслати в Google Analytics запит на видалення даних про використання цього сайту, пов'язаних із цим браузером.
Навчальний workspace
Навчайтеся, читаючи, запускаючи код і розв'язуючи задачі.
Практикуйте програмування з поясненнями тем, вправами, інструментами browser IDE, перевіркою regex і тренуванням друку коду в одному workspace.
Відкривайте інструменти у вкладках.Вправи, IDE-інструменти й тренажери залишаються доступними як вкладки сайту.
Перемикайтеся без втрати контексту.Переходьте між поясненнями, кодом та утилітами, зберігаючи своє місце.
Використовуйте sidebar як карту.Ліві панелі містять навігацію, налаштування, файли, libraries та керування інструментами.
PythonJavaScriptSQLite
Одна IDE, три практичні режими
Python у браузері.Запускайте невеликі скрипти, пробуйте бібліотеки й тренуйте API-запити без встановлення.
JavaScript для швидких експериментів.Перевіряйте код для браузера й порівнюйте ідеї поруч із навчальними матеріалами.
SQLite для практики з даними.Відкривайте оглядач бази даних, переглядайте таблиці, пишіть запити й вивчайте SQL локально.
ТемаIDE
Працюйте поруч у split tabs
Тримайте інструкції перед очима.Відкрийте вправу або довідкову сторінку поруч з IDE, замість постійних перемикань.
Порівнюйте інструменти під час навчання.Розміщуйте перевірки regex, пояснення та експерименти з кодом поруч, коли це потрібно для задачі.
Закрийте split, коли завершите.Workspace повернеться до однієї сфокусованої вкладки, а відкриті вкладки сайту залишаться доступними.
Тренажер друку коду
Або звичайного тексту
Тренажер розрахований на фізичну клавіатуру.Відкрийте цей розділ на ноутбуці або комп'ютері з широким екраном. На телефоні тренування друку не працюватиме коректно.
Швидкість: 0 зн/хв
0 слів/хв
Найкраща швидкість (60с): 0 зн/хв
0 слів/хв
Помилки: 0
Загальний час: 0.0 с
Щоб тренувати сліпий друк, не підглядайте на фізичну клавіатуру.