❮ OldingiKeyingi ❯ Taqqoslash va Mantiqiy operatorlar trueyoki ni sinash uchun foydalaniladi false.
Taqqoslash operatorlari
Taqqoslash operatorlari o'zgaruvchilar yoki qiymatlar o'rtasidagi tenglikni yoki farqni aniqlash uchun mantiqiy bayonotlarda qo'llaniladi.
Shuni inobatga olgan holda, x = 5quyidagi jadval taqqoslash operatorlarini tushuntiradi:
Operator
Description
Comparing
Returns
Try it
==
equal to
x == 8
false
Try it »
x == 5
true
Try it »
x == "5"
true
Try it »
===
equal value and equal type
x === 5
true
Try it »
x === "5"
false
Try it »
!=
not equal
x != 8
true
Try it »
!==
not equal value or not equal type
x !== 5
false
Try it »
x !== "5"
true
Try it »
x !== 8
true
Try it »
>
greater than
x > 8
false
Try it »
<
less than
x < 8
true
Try it »
>=
greater than or equal to
x >= 8
false
Try it »
<=
less than or equal to
x <= 8
true
Try it »
Buni qanday ishlatish mumkin
Qiyoslarni taqqoslash va natijaga qarab harakat qilish uchun taqqoslash operatorlaridan shartli bayonotlarda foydalanish mumkin:
if (age < 18) text = "Too young";
Shartli gaplardan foydalanish haqida ko'proq ma'lumotni ushbu o'quv qo'llanmaning keyingi bobida bilib olasiz.
Mantiqiy operatorlar
Mantiqiy operatorlar o'zgaruvchilar yoki qiymatlar orasidagi mantiqni aniqlash uchun ishlatiladi.
Shuni hisobga olsak x = 6va y = 3quyidagi jadval mantiqiy operatorlarni tushuntiradi:
Operator
Description
Example
Try it
&&
and
(x < 10 && y > 1) is true
Try it »
||
or
(x == 5 || y == 5) is false
Try it »
!
not
!(x == y) is true
Try it »
Shartli (uchlamchi) operator
JavaScript-da ba'zi bir shartlar asosida o'zgaruvchiga qiymat beradigan shartli operator ham mavjud.
Sintaksis
variablename = (condition) ? value1:value2
Misol
var voteable = (age < 18) ? "Too young":"Old enough";
O'zingiz sinab ko'ring » Agar o'zgaruvchan yosh 18 yoshdan kichik bo'lsa, o'zgaruvchan ovoz qiymati "Juda yosh" bo'ladi, aks holda ovoz berish imkoniyati "etarlicha eski" bo'ladi.
Turli xil turlarini taqqoslash
Har xil turdagi ma'lumotlarni taqqoslash kutilmagan natijalarni berishi mumkin.
Satrni raqam bilan taqqoslaganda, taqqoslash paytida JavaScript satrni raqamga o'zgartiradi. Bo'sh satr 0 ga aylanadi. Raqamli bo'lmagan satr NaNhar doimgiga aylanadi false.
Case
Value
Try
2 < 12
true
Try it »
2 < "12"
true
Try it »
2 < "John"
false
Try it »
2 > "John"
false
Try it »
2 == "John"
false
Try it »
"2" < "12"
false
Try it »
"2" > "12"
true
Try it »
"2" == "12"
false
Try it »
Ikki qatorni taqqoslaganda "2" "12" dan katta bo'ladi, chunki (alifbo bo'yicha) 1 2 dan kichik.
Tegishli natijani ta'minlash uchun o'zgaruvchilar taqqoslashdan oldin tegishli turga o'tkazilishi kerak:
age = Number(age);
if (isNaN(age)) {
voteable = "Input is not a number";
} else {
voteable = (age < 18) ? "Too young" : "Old enough";
}
O'zingiz sinab ko'ring » Начало формы
O'zingizni mashq bilan sinab ko'ring
Mashq qilish:
Qachon kattaroq bo'lsa , ogohlantirish uchun to'g'ri taqqoslash operatorini tanlang .truexy
x = 10;
y = 5;
ogohlantirish (x y);
Конец формы
JavaScript agar boshqacha bo'lsa, aks holda
❮ OldingiKeyingi ❯ Shartli gaplar har xil shartlarga asoslanib har xil harakatlarni bajarish uchun ishlatiladi.
Shartli bayonotlar
Ko'pincha kod yozishda siz turli xil qarorlar uchun turli xil harakatlarni bajarishni xohlaysiz.
Buning uchun kodingizdagi shartli bayonotlardan foydalanishingiz mumkin.
JavaScript-da bizda quyidagi shartli bayonotlar mavjud:
ifBelgilangan shart to'g'ri bo'lsa, bajariladigan kod blokini ko'rsatish uchun foydalaning
elseAgar xuddi shu shart noto'g'ri bo'lsa, bajariladigan kod blokini ko'rsatish uchun foydalaning
else ifAgar birinchi shart noto'g'ri bo'lsa, sinov uchun yangi shartni belgilash uchun foydalaning
switchAmalga oshiriladigan ko'plab muqobil kod bloklarini ko'rsatish uchun foydalaning
switchBayonotda, keyingi bobda tasvirlangan.
If bayonoti
ifAgar shart to'g'ri bo'lsa, bajarilishi kerak bo'lgan JavaScript-kod kodini ko'rsatish uchun bayonotdan foydalaning .
Sintaksis
if (condition) {
// block of code to be executed if the condition is true
}
ifKichik harflarda ekanligini unutmang . Katta harflar (agar yoki IF) JavaScript-da xatolikni keltirib chiqaradi.
Misol
Soat 18:00 dan kam bo'lsa, "Xayrli kun" bilan tabriklash:
if (hour < 18) {
greeting = "Good day";
}
Salomlashish natijasi:
Good day
O'zingiz sinab ko'ring » Boshqa bayonot
elseAgar shart noto'g'ri bo'lsa, bajariladigan kod blokini belgilash uchun bayonotdan foydalaning .
if (condition) {
// block of code to be executed if the condition is true
} else {
// block of code to be executed if the condition is false
}
Misol
Agar soat 18 dan kam bo'lsa, "Xayrli kun" tabrigini yarating, aks holda "Xayrli kech":
if (hour < 18) {
greeting = "Good day";
} else {
greeting = "Good evening";
}
Salomlashish natijasi:
Good day
O'zingiz sinab ko'ring » Agar bayonot bo'lsa
else ifAgar birinchi shart noto'g'ri bo'lsa, yangi shartni belgilash uchun bayonotdan foydalaning .
Sintaksis
if (condition1) {
// block of code to be executed if condition1 is true
} else if (condition2) {
// block of code to be executed if the condition1 is false and condition2 is true } else {
// block of code to be executed if the condition1 is false and condition2 is false
}
Misol
Agar soat 10:00 dan kam bo'lsa, "Xayrli tong" tabrigini yarating, agar bo'lmasa, lekin soat 20:00 dan kam bo'lsa, "Xayrli kun" tabrigini yarating, aks holda "Xayrli kech":
if (time < 10) {
greeting = "Good morning";
} else if (time < 20) {
greeting = "Good day";
} else {
greeting = "Good evening";
}
Salomlashish natijasi:
Good day
O'zingiz sinab ko'ring » Ko'proq misollar
Tasodifiy havola Ushbu misol W3Schools yoki World Wildlife Foundation (WWF) ga havola yozadi. Tasodifiy raqamdan foydalanib, havolalarning har biri uchun 50% imkoniyat mavjud.
JavaScript-ni almashtirish to'g'risidagi bayonot
❮ OldingiKeyingi ❯ switchBayonot turli shartlar asosida turli harakatlarni amalga oshirish uchun ishlatiladi.
JavaScript-ni almashtirish bayonoti
switchBajarilishi kerak bo'lgan ko'plab kod bloklaridan birini tanlash uchun bayonotdan foydalaning .
Sintaksis
switch(expression) {
case x:
// code block
break;
case y:
// code block
break;
default:
// code block }
Bu shunday ishlaydi:
Kommutatsiya ifodasi bir marta baholanadi.
Ifodaning qiymati har bir holatning qiymatlari bilan taqqoslanadi.
Agar mos keladigan bo'lsa, tegishli kod bloki bajariladi.
Agar mos kelmasa, standart kod bloki bajariladi.
Misol
getDay()Usuli 0 va 6 o'rtasida bir qator sifatida kuni qaytadi.
(Yakshanba = 0, dushanba = 1, seshanba = 2 ..)
Ushbu misol hafta ichi nomini hisoblash uchun ish kunining raqamidan foydalanadi:
switch (new Date().getDay()) {
case 0:
day = "Sunday";
break;
case 1:
day = "Monday";
break;
case 2:
day = "Tuesday";
break;
case 3:
day = "Wednesday";
break;
case 4:
day = "Thursday";
break;
case 5:
day = "Friday";
break;
case 6:
day = "Saturday";
}
Kun natijasi quyidagicha bo'ladi:
Monday
O'zingiz sinab ko'ring » Kalit so'z
JavaScript break kalit so'zga yetganda , u kalit blokidan chiqib ketadi.
Bu blok ichidagi bajarilishini to'xtatadi.
Kommutator blokida oxirgi holatni buzish kerak emas. Blok baribir u erda buziladi (tugaydi).
Izoh: Agar tanaffus bayonotini tashlab qo'ysangiz, baholash ish bilan mos kelmasa ham, keyingi ish bajariladi.
Standart kalit so'z
defaultKalit so'z hech ishi o'yin bor bo'lsa ishlatish uchun kodni bildiradi:
Misol
getDay()Usuli 0 va 6 o'rtasida bir qator sifatida kuni qaytadi.
Agar bugun na shanba (6) va na yakshanba (0) bo'lsa, standart xabarni yozing:
switch (new Date().getDay()) {
case 6:
text = "Today is Saturday";
break;
case 0:
text = "Today is Sunday";
break;
default:
text = "Looking forward to the Weekend";
}
Matn natijasi:
Looking forward to the Weekend
O'zingiz sinab ko'ring » Ish defaulttugmachalar blokidagi oxirgi holat bo'lishi shart emas:
Misol
switch (new Date().getDay()) {
default:
text = "Looking forward to the Weekend";
break;
case 6:
text = "Today is Saturday";
break;
case 0:
text = "Today is Sunday";
}
O'zingiz sinab ko'ring » Agar defaultalmashtirish blokidagi oxirgi holat bo'lmasa, standart ishni tanaffus bilan tugatishni unutmang.
Umumiy kod bloklari
Ba'zan bir xil koddan foydalanish uchun turli xil o'tish holatlarini xohlaysiz.
Ushbu misolda 4 va 5 bir xil kod blokini baham ko'radi va 0 va 6 boshqa kod bloklarini bo'lishadi:
Misol
switch (new Date().getDay()) {
case 4:
case 5:
text = "Soon it is Weekend";
break;
case 0:
case 6:
text = "It is Weekend";
break;
default:
text = "Looking forward to the Weekend";
}
O'zingiz sinab ko'ring » Tafsilotlarni almashtirish
Agar bir nechta holatlar ishning qiymatiga mos keladigan bo'lsa, birinchi holat tanlanadi.
Agar mos keladigan holatlar topilmasa, dastur standart yorlig'ida davom etadi .
Agar standart yorliq topilmasa, dastur o'chirilgandan so'ng bayonot (lar) da davom etadi .
Qattiq taqqoslash
Kommutator holatlarida qat'iy taqqoslash (===) ishlatiladi.
Qiymatlar bir xil bo'lishi uchun bir xil bo'lishi kerak.
Qattiq taqqoslash faqat operandlar bir xil turga to'g'ri kelgandagina to'g'ri kelishi mumkin.
Ushbu misolda x uchun mos keladigan narsa bo'lmaydi:
Misol
var x = "0";
switch (x) {
case 0:
text = "Off";
break;
case 1:
text = "On";
break;
default:
text = "No value found";
}
O'zingiz sinab ko'ring » Loop uchun JavaScript
❮ OldingiKeyingi ❯ Loops kod blokini bir necha marta bajarishi mumkin.
JavaScript ko'chadan
Agar siz bir xil kodni har safar har xil qiymat bilan qayta-qayta ishlatishni istasangiz, ko'chadanlar qulay.
Ko'pincha massivlar bilan ishlashda shunday bo'ladi:
Yozish o'rniga:
text += cars[0] + "
";
text += cars[1] + "
";
text += cars[2] + "
";
text += cars[3] + "
";
text += cars[4] + "
";
text += cars[5] + "
";
Siz yozishingiz mumkin:
var i;
for (i = 0; i < cars.length; i++) {
text += cars[i] + "
";
}
O'zingiz sinab ko'ring » Turli xil ko'chadan
JavaScript turli xil ko'chadanlarni qo'llab-quvvatlaydi:
for - kod bloki orqali bir necha marta aylanib o'tish
for/in - ob'ektning xususiyatlarini ko'rib chiqish
for/of - takrorlanadigan ob'ektning qiymatlari bo'yicha aylanishlar
while - belgilangan shart to'g'ri bo'lsa, kod bloki orqali ko'chiriladi
do/while - shuningdek, belgilangan shart to'g'ri bo'lsa, kod bloki orqali harakat qiladi
Loop uchun
forHalqa sintaksisi quyidagicha:
for (statement 1; statement 2; statement 3) {
// code block to be executed }
1-bayon kod blokining bajarilishidan oldin (bir marta) bajariladi.
2-bayon kod blokini bajarish shartini belgilaydi.
3-bayon kod bloki bajarilgandan so'ng (har safar) bajariladi.
Misol
for (i = 0; i < 5; i++) {
text += "The number is " + i + "
";
}
O'zingiz sinab ko'ring » Yuqoridagi misoldan quyidagilarni o'qishingiz mumkin:
1-bayon tsikl boshlanishidan oldin o'zgaruvchini o'rnatadi (var i = 0).
2-bayon tsiklning ishlash shartini belgilaydi (men 5 dan kam bo'lishi kerak).
3-bayonot tsikldagi kod bloki har safar bajarilganda qiymatni (i ++) oshiradi.
1-bayon
Odatda (i = 0) tsiklda ishlatiladigan o'zgaruvchini ishga tushirish uchun 1-so'zdan foydalanasiz.
Bu har doim ham shunday emas, JavaScript-ga ahamiyati yo'q. 1-bayonot ixtiyoriy.
Siz 1-bayonotda ko'plab qiymatlarni boshlashingiz mumkin (vergul bilan ajratilgan):
Misol
for (i = 0, len = cars.length, text = ""; i < len; i++) {
text += cars[i] + "
";
}
O'zingiz sinab ko'ring » Va siz 1-so'zni (masalan, sizning qadriyatlaringiz loop boshlanishidan oldin o'rnatilganda) qoldirishingiz mumkin:
Misol
var i = 2;
var len = cars.length;
var text = "";
for (; i < len; i++) {
text += cars[i] + "
";
}
O'zingiz sinab ko'ring » 2-bayon
Ko'pincha 2-ibora boshlang'ich o'zgaruvchining holatini baholash uchun ishlatiladi.
Bu har doim ham shunday emas, JavaScript-ga ahamiyati yo'q. 2-bayonot ham ixtiyoriy.
Agar 2-so'z to'g'ri bo'lsa, tsikl qayta boshlanadi, agar u noto'g'ri bo'lsa, tsikl tugaydi.
Agar siz 2-bayonotni tashlab qo'ysangiz , tsikl ichida tanaffusni ta'minlashingiz kerak . Aks holda loop hech qachon tugamaydi. Bu sizning brauzeringizni ishdan chiqaradi. Tanaffuslar haqida ushbu o'quv qo'llanmaning keyingi bobida o'qing.
3-bayon
Ko'pincha 3-ibora boshlang'ich o'zgaruvchining qiymatini oshiradi.
Bu har doim ham shunday emas, JavaScript-ga ahamiyati yo'q va 3-bayonot majburiy emas.
3-bayonot salbiy o'sish (i--), ijobiy o'sish (i = i + 15) yoki boshqa biron bir narsani bajarishi mumkin.
3-bayonot ham qoldirilishi mumkin (masalan, o'zingizning qadriyatlarni tsikl ichida oshirganda):
Misol
var i = 0;
var len = cars.length;
for (; i < len; ) {
text += cars[i] + "
";
i++;
}
O'zingiz sinab ko'ring » Uchun / ko'chadan
Javascript for/inbayonoti ob'ektning xususiyatlarini ko'rib chiqadi:
Misol
var person = {fname:"John", lname:"Doe", age:25};
var text = "";
var x;
for (x in person) {
text += person[x];
}
O'zingiz sinab ko'ring » Uchun / ko'chadan
JavaScript for/ofbayonoti takrorlanadigan ob'ektlarning qiymatlarini ko'rib chiqadi.
for/of Arrays, Strings, Maps, NodeLists va boshqalar kabi takrorlanadigan ma'lumotlar tuzilmalarini ko'rib chiqishga imkon beradi.
for/ofHalqa sintaksisi quyidagicha:
for (variable of iterable) {
// code block to be executed }
o'zgaruvchan - har bir takrorlash uchun o'zgaruvchiga keyingi xususiyat qiymati beriladi. O'zgaruvchi bilan e'lon mumkin const, letyoki var.
iterable - takrorlanadigan xususiyatlarga ega bo'lgan ob'ekt.
Bir qatorni ko'rib chiqish
Misol
var cars = ["BMW", "Volvo", "Mini"];
var x;
for (x of cars) {
document.write(x + "
");
}
O'zingiz sinab ko'ring » String ustida ilmoq
Misol
var txt = "JavaScript";
var x;
for (x of txt) {
document.write(x + "
");
}
O'zingiz sinab ko'ring » While Loop
whileHalqa va do/whilehalqa keyingi bobda bayon qilinadi.