Mavzu: JavaScriptda o‘zgaruvchilar, ma’lumotlar turlari, operatorlar, massivlar, hodisalari, funksiyalar va ob’ektlari ustida ammallar bajarish. (2 soat)
JavaScript tilida o‘zgaruvchilarni ishlatish mumkin va ularni nomlari bilan manzillash mumkin. O‘zgaruvchilar global va lokal bo‘lishi mumkin. Global o‘zgaruvchilarga ssenariyning istalgan joyida ruxsat bo‘lishi mumkin. Lokal o‘zgaruvchilarning harakati esa e‘lon qilingan o‘zgaruvchilar ichidagi funksiyalar bilan chegaralangan. Basic dasturlash tili singari JavaScript ssenariysini yaratayotgan vaqtda avvaldan e‘lon qilinmagan o‘zgaruvchilarni ishlatish mumkin.
O’zgaruvchilar e’loni. Java Script da hamma o‘zgaruvchilar var kalit so‘zi orqali e‘lon qilinadi va quyidagicha amalga oshiriladi:
var MyHelloMsg;
O‘zgaruvchi turi o‘zlashtiriladi qachonki, unga biror bir qiymat o‘zlashtirilsa, quyida avvaldan e‘lon qilinmagan matnli qator o‘zgaruvchiga yozilmoqda:
MyMsg = "Salom!";
MyMsg o‘zgaruvchi nomi o‘zlashtirilgandan so‘ng ruxsat beriladi.
O‘zgaruvchi nomini tanlaganda, quyidagi oddiy qoidalarni eslab
qolish kerak:
O‘zgaruvchi nomi harflardan yoki "_", "$" belgilardan boshlanish
kerak va faqat harflardan, sonlardan va "_", "$" belgilardan iborat bo‘lishi
kerak;
O‘zgaruvchilar nomi JavaScript ning zaxiralangan kalit so‘zlari bilar mos kelmasligi kerak.
O’zgaruvchining qiymatini o’zlashtirish. "=" o‘zlashtirish operatori yordamida o‘zgaruvchilar qiymati o‘zlashtiriladi. Misol qilib quyidagi o‘zgaruvchi keltirilgan va unda matnli qator yozilgan:
var MyHelloMsg;
MyHelloMsg = "Hello, world!";
MyHelloMsg sonli o‘zgaruvchini dasturning istalgan joyida o‘zlashtirish mumkin, misol uchun:
MyHelloMsg = 4;
Bu operator bajarilgandan so‘ng o‘zgaruvchi turi o‘zgaradi, shuningdek interpretatsiya jarayonida brauzer hech qanday ogoxlantiruvchi xabarlarni yubormaydi.
O‘zgaruvchini maxsus null qiymati orqali o‘zlashtirish mumkin:
MyHelloMsg = null;
Bunday o‘zlashtirish hech qanday turda o‘zgaruvchini belgilamaydi.
JavaScript da ma’lumotlar turi. JavaScript tilida bir nechta ma‘lumotlar turi mavjud. Bular sonlar, matnli qatorlar, mantiqiy ma‘lumotlar, ob‘yektlar, aniqlanmagan turli ma‘lumotlar hamda maxsus tur null.
Sonlar. JavaScript tili turli formatdagi sonlarni ishlatishga ruxsat beradi, Bular butun sonlar, suzuvchi nuqtali o‘nli formatdagi sonlar va ilmiy notatsiya sonlar. Butun sonlar 8, 10, 16 asosida berilishi mumkin.
Misol uchun:
25 10 asosidagi butun son
0137 8 asosidagi butun son
0xFF 16 asosidagi butun son
386.7 Suzuvchi o‘nli nuqtali son
25e5
yoki 25E5 Ilmiy notatsiyadagi son, 2500000 ga teng.
Ayrim hollarda "son bo‘lmagan" arifmetik funksiyalar kelib chiqishi mumkin. JavaScript da aytilganidek NaN (Not a Number). "Son bo‘lmagan" – bu hech qanday songa loyiq bo‘lmagan maxsus qiymat. Bu sonlar ustida operatsiya bajarilayotgan vaqtda, va natija son ko‘rinishida taqdim etilmagan hollarda paydo bo‘ladi. "Son bo‘lmagan" qiymatga to‘g‘ri kelishini isNaN funksiyasi yordamida tekshirish mumkin.
Matnli qator. Matnli qator – bu bir yoki qo‘shtirnoq ketma ketlik belgisi, misol uchun:
"Hello, world!"
""
"12345"
‗Bu matnli qator‘
"" qatori –bo‘shdir. Quyidagi 2 ta o‘zlashtirish ekvivalent emasligini
aniqlaymiz:
MyStr=""
MyStr1=null
Birinchi holda MyStr o‘zgaruvchisida matnli qator saqlanmoqda
(bo‘sh bo‘lsa ham), ikkinchisida esa hech narsa.
Mantiqiy ma’lumotlar. Mantiqiy ma‘lumotlar faqat 2 ta qiymatni, ya‘ni True va False ni o‘z ichiga oladi. Bu qiymatlar 0 va 1 sonlar bilan bog‘liq emas. Bu qiymatlarning asosiy obrazi solishtirish operatsiyasi ajarilayotgan vaqtga qaratilgan, hamda shartli operatsiyalar ishlatilganda ham.
Aniqlanmagan turli ma’lumotlar. Agar o‘zgaruvchi e‘lon qilingan bo‘lsa, ammo unga xali qiymat o‘zlashtirilmagan bo‘lsa, u holda u aniqlanmagan turga ega bo‘ladi. Misol uchun quyidagi qatorda aniqlanmagan turga ega bo‘lgan MyVariable o‘zgaruvchisi e‘lon qilingan: var MyVariable;
Agarda bu o‘zgaruvchini null qiymati bilan o‘zgartirsak, u holda o‘zgaruvchi turi o‘zgaradi va null qiymatga ega bo‘lgan o‘zgaruvchiga aylanadi: MyVariable = null;
Ma’lumotlar turini o’zgartirish. Agarda ifodalarda turli xil turli o‘zgaruvchilar uchrab qolsa, JavaScript interpretatori avtomatik holda sonli ma‘lumotlarni matnli qatorlarga o‘zgartirishi mumkin. Teskari aylantirishni (qatorni-songa) maxsus funksiyalar yordamida, ya‘ni parseInt va parseFloat funksiyalari yordamida o‘zgartirish mumkin. Buni quyidagi misol orqali ko‘rish mumkin:
Misol