TypeScript - Вложенные если-语句: руковод для начинающих

Привет, будущие супергерои кодирования! Сегодня мы окунемся в захватывающий мир вложенных если- statements в TypeScript. Не волнуйтесь, если вы новички в программировании - я буду вашим дружелюбным проводником в этом приключении, как я делал для countless студентов на протяжении многих лет преподавания. Так что возьмите любимый напиток, устройтесь поудобнее и отправляйтесь в это путешествие вместе со мной!

TypeScript - Nested If Statements

Что такое вложенные если- statements?

Прежде чем окунуться в глубокий конец, давайте начнем с азов. Представьте, что вы играете в видеоигру, где ваш персонаж должен принимать несколько решений. Каждое решение ведет к другому набору выборов. Это Essentially то, что такое вложенные если- statements в программировании - решения внутри решений!

В TypeScript (и многих других языках программирования) мы используем если- statements для принятия решений в нашем коде. Когда мы ставим один если- statement внутри другого, это то, что мы называем "вложенным если- statement".

Why Use Nested If Statements?

Вы можете задаться вопросом: "Почему нам нужны эти вложенные решения?" Давайте расскажу вам короткую историю.

Представьте, что вы создаете программу для кофейни. Вы хотите предоставить скидку клиентам, но это зависит от двух вещей: являются ли они постоянными клиентами и покупают ли они более 3 кофей. Вы можете использовать вложенные если- statements для проверки обоих этих условий. Это как спрашивать: "Они постоянные клиенты? Если да, покупают ли они более 3 кофей?"

Теперь давайте посмотрим, как мы пишем это в TypeScript!

Синтаксис вложенных если- statements

Вот базовая структура вложенных если- statements:

if (condition1) {
// Код для выполнения, если condition1 истинен
if (condition2) {
// Код для выполнения, если и condition1, и condition2 истинны
}
}

Не пугайтесь! Это проще, чем кажется. Давайте разберем это:

  1. Мы начинаем с внешнего if statement, проверяющего condition1.
  2. Если condition1 истинен, мы enters первый кодовый блок.
  3. Внутри этого блока у нас есть другой if statement, проверяющий condition2.
  4. Если condition2 также истинен, мы выполняем самый внутренний кодовый блок.

Пример: Скидка в кофейне

Давайте оживим нашу историю кофейни с помощью кода:

let isRegularCustomer: boolean = true;
let numberOfCoffees: number = 4;

if (isRegularCustomer) {
console.log("Добро пожаловать обратно! Давайте проверим, подходите ли вы под скидку.");
if (numberOfCoffees > 3) {
console.log("Отличные новости! Вы получаете 20% скидку на ваш заказ.");
} else {
console.log("Купите еще один кофе, чтобы получить 20% скидку!");
}
} else {
console.log("Добро пожаловать! Рассмотрите возможность вступления в нашу忠诚ную программу для отличных скидок.");
}

Давайте разберем этот код:

  1. Мы объявляем две переменные: isRegularCustomer и numberOfCoffees.
  2. Внешний if statement проверяет, является ли клиент постоянным.
  3. Если да, мы приветствуем их обратно и переходим к внутреннему if statement.
  4. Внутренний if проверяет, покупают ли они более 3 кофей.
  5. Если оба условия истинны, они получают сообщение о скидке.
  6. Если они постоянные, но покупают 3 или fewer кофей, они получают предложение купить больше.
  7. Если они не постоянные клиенты, они получают другое приветственное сообщение.

Запустите этот код, и вы увидите сообщение о скидке, так как оба условия истинны!

Лестница else...if

Теперь давайте повысим наш уровень с помощью лестницы else...if. Это super полезно, когда у вас есть несколько условий для проверки.

Синтаксис лестницы else...if

Вот как это выглядит:

if (condition1) {
// Код для condition1
} else if (condition2) {
// Код для condition2
} else if (condition3) {
// Код для condition3
} else {
// Код, если ни одно из условий не истинно
}

Пример: Предпочтения температуры кофе

Давайте используем лестницу else...if, чтобы обработать различные предпочтения температуры кофе:

let coffeeTemperature: number = 70; // Температура в градусах Цельсия

if (coffeeTemperature > 80) {
console.log("Осторожно: ваш кофе extremly горячий!");
} else if (coffeeTemperature >= 70) {
console.log("Ваш кофе горячий и готов к употреблению.");
} else if (coffeeTemperature >= 60) {
console.log("Ваш кофе находится в приятной теплой температуре.");
} else if (coffeeTemperature >= 50) {
console.log("Ваш кофе начинает остывать, может быть, стоит выпить его скоро.");
} else {
console.log("Ваш кофе остыл. Хотите, чтобы мы обсушили его?");
}

В этом примере:

  1. Мы проверяем температуру кофе против различных порогов.
  2. В зависимости от температуры, мы предоставляем khácое сообщение.
  3. Если ни одно из условий не выполнено (температура ниже 50°C), мы предполагаем, что кофе остыл.

Эта структура позволяет нам эффективно обрабатывать несколько сценариев без слишком deep nesting.

Лучшие практики для вложенных если- statements

Before мы завершим, вот несколько золотых правил, которые я learned за годы:

  1. Удерживайте его простым: Попробуйте не углубляться слишком deeply. Если вы обнаружите, что у вас более 3 уровней, подумайте о refactoring вашего кода.

  2. Используйте ясные условия: Сделайте ваши условия легкими для понимания. if (isHungry && timeIsPastNoon) яснее, чем if (a && b).

  3. Рассмотрите использование switch statements: Для нескольких условий, проверяющих одну и ту же переменную, switch statement может быть clearer.

  4. Используйте ранние returns: Иногда вы можете упростить свой код, вернувшись рано вместо nesting.

Вот быстрый пример ранних returns:

function checkAge(age: number): string {
if (age < 0) {
return "Неверный возраст";
}
if (age < 18) {
return "Вы несовершеннолетний";
}
if (age < 65) {
return "Выadult";
}
return "Вы пожилой гражданин";
}

Это часто чище, чем nesting несколько if-else statements.

Заключение

Поздравления! Вы только что повысили свои навыки TypeScript с помощью вложенных если- statements и лестниц else...if. Помните, эти мощные инструменты в вашем наборе инструментов программирования, но, как и любое средство, используйте их мудро.

Практикуйте эти концепции, экспериментируйте с различными условиями, и вскоре вы сможете легко создавать сложные деревья решений. Кто знает? Может быть, вы будете использовать эти навыки для создания следующей большой видеоигры или революционного приложения!

Продолжайте программировать, продолжайте учиться и, самое главное, получайте удовольствие! Until в следующий раз, это ваш дружелюбныйneighborhood coding teacher, прощаясь. Счастливого TypeScripting!

Credits: Image by storyset