العبارات الشرطية في TypeScript

العبارات الشرطية في TypeScript

في هذه المقالة، سنشرح العبارات الشرطية في TypeScript۔

YouTube Video

عبارات if في TypeScript

في TypeScript، تقوم عبارة if بإجراء تفريع ينفذ الكود إذا كان الشرط المحدد يساوي true ولا ينفذه إذا كان الشرط يساوي false۔ تتمتع عبارة if بنفس البنية في JavaScript وتستخدم أمان الأنواع في TypeScript لتنفيذ التفريع الشرطي۔

الصياغة الأساسية

النحو الأساسي لجملة if هو كما يلي۔

1if (condition) {
2    // Code to execute if the condition is true
3} else if (anotherCondition) {
4    // Code to execute if the first condition is false
5    // and the another condition is true
6} else {
7    // Code to execute if all conditions are false
8}
  • إذا كانت condition هي true، يتم تنفيذ الكود في الكتلة التالية۔
  • إذا كانت condition هي false و anotherCondition هي true، يتم تنفيذ الكود في الكتلة التالية۔
  • إذا لم تكن أي من الشروط true، يتم تنفيذ الكود في الكتلة النهائية else۔

مثال 1: عبارة if-else الأساسية

في المثال التالي، يتم التحقق مما إذا كانت القيمة x تساوي 10 أو أكثر ويتم عرض النتيجة۔

1let x: number = 15;
2
3if (x >= 10) {
4    console.log("x is 10 or greater");
5} else {
6    console.log("x is less than 10");
7}
8// Outputs: x is 10 or greater

مثال 2: عبارة if-else if-else

للتحقق من شروط متعددة، استخدم else if لإضافة تفريعات۔

 1let score: number = 85;
 2
 3if (score >= 90) {
 4    console.log("Excellent");
 5} else if (score >= 70) {
 6    console.log("Passed");
 7} else {
 8    console.log("Failed");
 9}
10// Outputs: Passed

مثال 3: عبارة if مع التحقق من النوع

من الممكن أيضًا إجراء تفريع شرطي لأنواع محددة باستخدام ميزة التحقق من النوع في TypeScript۔ على سبيل المثال، تحقق من نوع متغير باستخدام معامل typeof وقم بتنفيذ المعالجة المناسبة۔

 1let value: any = "Hello";
 2
 3if (typeof value === "string") {
 4    console.log("The value is a string: " + value);
 5} else if (typeof value === "number") {
 6    console.log("The value is a number: " + value);
 7} else {
 8    console.log("The value is of another type");
 9}
10// Outputs: "The value is a string: Hello"

مثال 4: العبارات المتداخلة if

يمكنك أيضًا تداخل العبارات if للتحقق من شروط معقدة۔

 1let age: number = 25;
 2let isMember: boolean = true;
 3
 4if (age >= 18) {
 5    if (isMember) {
 6        console.log("You are a member and 18 years old or older");
 7    } else {
 8        console.log("You are not a member but 18 years old or older");
 9    }
10} else {
11    console.log("You are under 18 years old");
12}
13// Output
14// You are a member and 18 years old or older

المشغل الثلاثي (عامل التشغيل الشرطي)

الصياغة

1condition ? valueIfTrue : valueIfFalse

إذا كنت ترغب في كتابة جملة if بشكل أكثر اختصاراً، يمكنك استخدام المشغل الثلاثي۔

مثال

1const number: number = 7;
2const result: string = number % 2 === 0 ? "Even" : "Odd";
3console.log(result); // "Odd"

في هذه الحالة، نظرًا لأن number هو 7، سيتم عرض Odd۔

الملخص

  • تعتبر عبارة if بنية تحكم أساسية لتحديد المعالجة التي ستنفذ بناءً على الشروط۔
  • يمكنك معالجة شروط متعددة باستخدام else if۔
  • باستخدام typeof، يمكنك الاستفادة من أنواع TypeScript لتنفيذ تفريع شرطي۔
  • معالجة الشروط المعقدة ممكنة باستخدام العبارات المتداخلة if۔
  • يمكنك أيضًا استخدام المشغل الثلاثي لكتابة فروع شرطية باختصار۔

في TypeScript، يمكن أن يؤدي استخدام العبارات if مع مراعاة أمان الأنواع إلى تحسين موثوقية الكود۔

عبارات Switch في TypeScript

عبارة switch في TypeScript هي بنية تحكم تُستخدم لتفريع الكود بناءً على شروط متعددة۔ بدلاً من استخدام عبارات if-else if لتقييم شروط متعددة، يمكنك استخدام عبارة switch لكتابة منطق التفريع بطريقة مختصرة بناءً على قيم محددة۔

الصياغة الأساسية

 1switch (expressionToEvaluate) {
 2    case value1:
 3        // Code to execute if the expression evaluates to value1
 4        break;
 5    case value2:
 6        // Code to execute if the expression evaluates to value2
 7        break;
 8    default:
 9        // Code to execute if none of the conditions match
10}

في عبارة switch، إذا كانت القيمة المحددة في case تطابق التعبير المُقيم، يتم تنفيذ كتلة case۔ احذر أنه في حالة عدم وجود break، يتم تنفيذ الكتلة case التالية على التوالي۔ يتم تنفيذ الكتلة default إذا لم يتطابق أي من تصريحات case۔

مثال 1: بيان أساسي لـswitch

في المثال أدناه، يتم إعطاء رقم يمثل يومًا في الأسبوع (من 0 إلى 6)، ويتم إخراج اسم اليوم المقابل بناءً على تلك القيمة۔

 1let day: number = 3;
 2
 3switch (day) {
 4    case 0:
 5        console.log("Sunday");
 6        break;
 7    case 1:
 8        console.log("Monday");
 9        break;
10    case 2:
11        console.log("Tuesday");
12        break;
13    case 3:
14        console.log("Wednesday");
15        break;
16    case 4:
17        console.log("Thursday");
18        break;
19    case 5:
20        console.log("Friday");
21        break;
22    case 6:
23        console.log("Saturday");
24        break;
25    default:
26        console.log("Invalid day");
27}
28// Outputs: Wednesday

مثال 2: مثال باستخدام default

كتلة default مفيدة لأنها تعمل عندما لا يتطابق أي من تصريحات case، مما يتيح لك التعامل مع القيم غير المتوقعة۔

 1let statusText: string = "pending";
 2
 3switch (statusText) {
 4    case "success":
 5        console.log("Operation succeeded");
 6        break;
 7    case "error":
 8        console.log("An error occurred");
 9        break;
10    case "pending":
11        console.log("Processing");
12        break;
13    default:
14        console.log("Unknown status");
15}
16// Outputs: Processing

مثال 3: تنفيذ نفس العملية لعدة cases

إذا كنت ترغب في تنفيذ نفس الإجراء لعدة تصريحات case، يمكنك سردها بشكل متتالٍ۔

 1let fruit: string = "apple";
 2
 3switch (fruit) {
 4    case "apple":
 5    case "banana":
 6    case "orange":
 7        console.log("This is a fruit");
 8        break;
 9    default:
10        console.log("This is not a fruit");
11}
12// Outputs: This is a fruit

مثال 4: السلوك عند حذف break

حذف break يؤدي إلى سلوك "التسلسل" حيث يتم تنفيذ التصريح case التالي أيضًا۔

 1let rank: number = 1;
 2
 3switch (rank) {
 4    case 1:
 5        console.log("Gold");
 6    case 2:
 7        console.log("Silver");
 8    case 3:
 9        console.log("Bronze");
10    default:
11        console.log("Not ranked");
12}
13// Outputs:
14// Gold
15// Silver
16// Bronze
17// Not ranked

بهذه الطريقة، بعد مطابقة case، يتم تنفيذ case التالي أيضًا، لذا يُستخدم break عادةً لتجنب التسلسل غير الضروري۔

الملخص

  • تصريح switch هو هيكل تحكم يسمح لك بكتابة منطق تفرعي بناءً على شروط متعددة بشكل مختصر۔
  • يجب أن يقوم كل case بإنهاء العملية صراحةً باستخدام break۔
  • يتم تنفيذ الكتلة default إذا لم يتطابق أي من cases۔
  • من الممكن أيضًا تنفيذ نفس العملية لعدة cases۔

تصريح switch في TypeScript مفيد للتعامل بكفاءة مع شروط متعددة مع الحفاظ على قابلية قراءة الشيفرة البرمجية۔

يمكنك متابعة المقالة أعلاه باستخدام Visual Studio Code على قناتنا على YouTube.۔ يرجى التحقق من القناة على YouTube أيضًا.۔

YouTube Video