JavaScript · Синтаксис · Начальный уровень
Условные операторы 2
Дополнительная практика по условным операторам в JavaScript: проверки строк, длины текста, символов, срезов через методы строк, логических операторов &&/|| и простых сценариев ввода.
Краткое введение в тему и пояснения перед упражнениями (упражнения ниже):
Паттерны из задач
#Упражнения:
Первый и последний символ.
#Пользователь вводит строку. Если длина строки больше 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" — выведите "Начинается с 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]";
Решение
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("Введите корректные данные");
}
Фрагмент с 3-го по 8-й символ.
#Пользователь вводит строку. Если длина строки больше 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("Неподходящая длина");
}
Похоже на JavaScript.
#Пользователь вводит строку. Если строка начинается с "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("Не, я не разговариваю с незнакомыми людьми! Адьос!");
}