JavaScript-da Son Raqamlarini Tekshirish

Faraz qilaylik, bizga quyidagi son berilgan:

javascriptlet num = 12345;

Songa birinchi belgi sifatida murojaat qilishga urinish kutilmagan natijaga olib keladi:

javascriptlet num = 12345;

if (num[0] == 1) {
  console.log('+++');
} else {
  console.log('---'); // ishlaydi mana bu
}

Siz allaqachon bilishingiz kerak, muammo shundaki, satr belgilariga murojaat qilish mumkin, lekin son raqamlariga - mumkin emas:

javascriptlet num = 12345;
console.log(num[0]); // undefined chiqaradi

Muammoni hal qilish uchun sonimizni satrga aylantiramiz:

javascriptlet num = 12345;
let str = String(num);

if (str[0] == 1) {
  console.log('+++'); // ishlaydi mana bu
} else {
  console.log('---');
}

Yangi o‘zgaruvchi kiritish shart emas, [0] ni to‘g‘ridan-to‘g‘ri String funksiyasi natijasiga qo‘llash mumkin:

javascriptlet num = 12345;

if (String(num)[0] == 1) {
  console.log('to‘g‘ri'); // 'to‘g‘ri' chiqaradi
} else {
  console.log('noto‘g‘ri');
}

Endi faraz qilaylik, biz birinchi raqamning 1 yoki 2 ga tengligini tekshirmoqchimiz. Mos kodni yozamiz:

javascriptlet num = 12345;

if (String(num)[0] == 1 || String(num)[0] == 2) {
  console.log('+++');
} else {
  console.log('---');
}

Bunday holda, String(num)[0] konstruktsiyasi ikki marta takrorlanadi. Bu, birinchidan, uzun, ikkinchidan, nomunosib, chunki biz sonni satrga ikki marta aylantiramiz - ikkinchi marta ortiqcha bo‘lib chiqadi, va dastur resurslari buning uchun sarflanadi.

Muammoni tuzatamiz:

javascriptlet num = 12345;
let first = String(num)[0];

if (first == 1 || first == 2) {
  console.log('+++');
} else {
  console.log('---');
}
Задание 1

Butun son berilgan. Ushbu sonning oxirgi raqami nolga tengligini tekshiradigan shart yozing.

Задание 2

Faraz qilaylik, num o‘zgaruvchisida son saqlanadi. Son juft yoki toq ekanligini aniqlang. Son oxirgi raqami 0, 2, 4, 6 yoki 8 ga teng bo‘lsa juft, aks holda toq hisoblanadi.