01 İdarəetmə axını nədir?
İdarəetmə axını kodunuzun hansı sıra ilə icra olunacağını müəyyən edir. Standart olaraq, JavaScript kodu yuxarıdan aşağıya və soldan sağa icra olunur. Ancaq idarəetmə axını ifadələri bu sıranı dəyişdirməyə, kod bloklarını şərtlərə əsasən keçməyə və ya təkrarlamağa imkan verir.
İdarəetmə axını növləri
JavaScript üç əsas idarəetmə axını strukturuna malikdir:
- Şərti ifadələr - Şərtlərə əsasən fərqli kod bloklarını icra edin (if/else, switch)
02 If/Else ifadələri
If ifadəsi şərtə əsasən kod blokunu icra etməyə imkan verir. Şərt true olarsa, kod icra olunur. Əks halda, o keçilir və ya alternativ else bloku icra olunur.
Əsas if ifadəsi
If ifadəsinin ən sadə forması yalnız bir şərt yoxlayır.
let temperature = 25;
if (temperature > 20) {
console.log('Hava istidir!');
}
// Çıxış: Hava istidir!
let age = 15;
if (age >= 18) {
console.log('Siz səsvermə yaşındasınız');
}
// Bu heç bir şey çıxarmaz çünki şərt false-durIf/Else
Else bloku şərt false olduqda alternativ kod təqdim edir.
let score = 75;
if (score >= 50) {
console.log('Keçdiniz!');
} else {
console.log('Kəsildiniz.');
}
// Çıxış: Keçdiniz!
let isRaining = true;
if (isRaining) {
console.log('Çətir götürün');
} else {
console.log('Gözəl günün keyfini çıxarın!');
}
// Çıxış: Çətir götürünElse If
Else if çoxsaylı şərtləri ardıcıl olaraq yoxlamağa imkan verir.
let grade = 85;
if (grade >= 90) {
console.log('Qiymətiniz: A');
} else if (grade >= 80) {
console.log('Qiymətiniz: B');
} else if (grade >= 70) {
console.log('Qiymətiniz: C');
} else if (grade >= 60) {
console.log('Qiymətiniz: D');
} else {
console.log('Qiymətiniz: F');
}
// Çıxış: Qiymətiniz: BYuvalanmış if ifadələri
Daha mürəkkəb məntiqi yoxlamalar üçün if ifadələrini bir-birinin içinə yerləşdirə bilərsiniz.
let age = 20;
let hasLicense = true;
if (age >= 18) {
if (hasLicense) {
console.log('Sürə bilərsiniz!');
} else {
console.log('Sürücülük vəsiqəsi almalısınız');
}
} else {
console.log('Sürücülük yaşında deyilsiniz');
}
// Çıxış: Sürə bilərsiniz!💡 İpucu: Həddindən artıq yuvalanmadan qaçın. 2-3 səviyyədən çox yuvalansa, məntiqi operatorlardan (&&, ||) istifadə etməyi və ya kodu funksiyalara bölməyi düşünün.
03 Üçlü (ternary) operator
Üçlü operator sadə if/else ifadəsi üçün qısa sözdizimini təqdim edir. O, ? : istifadə edir və çox vaxt təyin ifadələrində istifadə olunur.
Sintaksis
şərt ? ifTrue : ifFalse
// If/else istifadə etməklə
let age = 20;
let status;
if (age >= 18) {
status = 'Yetkin';
} else {
status = 'Yetkin deyil';
}
// Üçlü operator istifadə etməklə
let age2 = 20;
let status2 = age2 >= 18 ? 'Yetkin' : 'Yetkin deyil';
console.log(status2); // Çıxış: Yetkin
// Başqa nümunələr
let score = 85;
let result = score >= 50 ? 'Keçdi' : 'Kəsildi';
console.log(result); // Çıxış: Keçdi
let temp = 30;
let weather = temp > 25 ? 'İsti' : 'Soyuq';
console.log(weather); // Çıxış: İsti04 Switch ifadəsi
Switch ifadəsi bir dəyəri çoxsaylı mümkün hallarla müqayisə edir. O, çoxsaylı else if ifadələrinə alternativ olaraq istifadə oluna bilər və tez-tez daha təmiz və oxunaqlıdır.
Əsas sintaksis
let day = 3;
let dayName;
switch (day) {
case 1:
dayName = 'Bazar ertəsi';
break;
case 2:
dayName = 'Çərşənbə axşamı';
break;
case 3:
dayName = 'Çərşənbə';
break;
case 4:
dayName = 'Cümə axşamı';
break;
case 5:
dayName = 'Cümə';
break;
case 6:
dayName = 'Şənbə';
break;
case 7:
dayName = 'Bazar';
break;
default:
dayName = 'Yanlış gün';
}
console.log(dayName); // Çıxış: ÇərşənbəDüşmə davranışı (fall-through)
Bəzən düşmə davranışı faydalı ola bilər - çoxsaylı case-lər eyni kodu icra edə bilər.
let fruit = 'alma';
switch (fruit) {
case 'alma':
case 'armud':
case 'banan':
console.log('Bu meyvədir');
break;
case 'kələm':
case 'kartof':
case 'soğan':
console.log('Bu tərəvəzdir');
break;
default:
console.log('Naməlum qida növü');
}
// Çıxış: Bu meyvədirDefault hal
Default hal heç bir case uyğun gəlmədikdə icra olunur (else kimi).
let color = 'bənövşəyi';
switch (color) {
case 'qırmızı':
console.log('Qırmızı seçdiniz');
break;
case 'mavi':
console.log('Mavi seçdiniz');
break;
case 'yaşıl':
console.log('Yaşıl seçdiniz');
break;
default:
console.log('Rəng tapılmadı');
}
// Çıxış: Rəng tapılmadıSwitch və ya if/else?
Switch istifadə edin:
- Eyni dəyəri çoxsaylı spesifik hallarla müqayisə edərkən
- Dəyər mətndirlərdən və ya rəqəmlərdən biri olarkən
- Çoxsaylı else if-ləriniz olduqda
If/else istifadə edin:
- Müxtəlif dəyişənlərlə və ya mürəkkəb şərtlərlə işləyərkən
- Diapazon yoxlamaları apararkən (məs. age > 18 && age < 65)
- Boolean dəyərləri yoxlayarkən
05 Ümumi səhvlər
❌ Switch-də break-i unutmaq
Break olmadan, icra növbəti case-lərə "düşəcək".
// ❌ Yanlış
let day = 1;
switch (day) {
case 1:
console.log('Bazar ertəsi');
case 2:
console.log('Çərşənbə axşamı');
}
// Çıxış: "Bazar ertəsi" VƏ "Çərşənbə axşamı"
// ✅ Düzgün
let day2 = 1;
switch (day2) {
case 1:
console.log('Bazar ertəsi');
break;
case 2:
console.log('Çərşənbə axşamı');
break;
}
// Çıxış: yalnız "Bazar ertəsi"❌ Şərtdə təyin (=) operandını istifadə etmək
= (təyin) ilə === (müqayisə) qarışdırmaq.
let x = 5;
// ❌ Yanlış
if (x = 10) { // x-ə 10 təyin edir, onu yoxlamır!
console.log('Bu həmişə icra olunur!');
}
// ✅ Düzgün
if (x === 10) { // x-i 10 ilə müqayisə edir
console.log('x 10-dur');
}Xülasə
Təklifiniz var, səhv və ya xəta tapdınız? Zəhmət olmasa bizimlə əlaqə saxlayın.