Ракамҳои ададро дар JavaScript санҷидан

Бигзор мо ададе дошта бошем:

javascriptlet num = 12345;

Кӯшиши муроҷиат ба аломати аввали адад бо рафтори ногаҳонӣ сар мешавад:

javascriptlet num = 12345;

if (num[0] == 1) {
  console.log('+++');
} else {
  console.log('---'); // ин кор мекунад
}

Чунон ки шумо аллакай бояд дониста бошед, мушкилӣ он ҷост, ки ба аломатҳои сатр муроҷиат кардан мумкин аст, аммо ба ракамҳои адад - нест:

javascriptlet num = 12345;
console.log(num[0]); // undefined-ро чоп мекунад

Барои ҳалли мушкилӣ, адади худро ба сатр табдил диҳем:

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

if (str[0] == 1) {
  console.log('+++'); // ин кор мекунад
} else {
  console.log('---');
}

Воҳиди нави тағирёбандаро ворид кардан зарур нест, метавонед [0]-ро бевосита ба натиҷаи функсияи String истифода баред:

javascriptlet num = 12345;

if (String(num)[0] == 1) {
  console.log('дуруст'); // 'дуруст'-ро чоп мекунад
} else {
  console.log('нодуруст');
}

Бигзор акнун мо мехоҳем раками аввалро барои баробарии он ба 1, ё 2 санҷем. Коди мувофиқро нависем:

javascriptlet num = 12345;

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

Дар ин ҳолат, маълум мешавад, ки сохтор String(num)[0] ду маротиба такрор мешавад. Ин, аввалан, дароз аст, ва дуюман, оптималӣ нест, зеро мо ду маротиба ададро ба сатр табдил медиҳем - маротибаи дуюм изҳофӣ мешавад, ва сарватҳои барнома ба ин сарф мешаванд.

Мушкилиро ислоҳ кунем:

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

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

Адади бутун дода шудааст. Шарте нависед, ки санҷад, оё раками охирини ин адад ба сифр баробар аст ё не.

Задание 2

Бигзор дар тағирёбандаи num адад нигоҳ дошта шавад. Муайян кунед, ки адад ҷуфт аст ё не. Адад ҳангоми баробарии аломати охирин ба 0, 2, 4, 6 ё 8 ҷуфт хоҳад буд, ва дар акси ҳол тоқ хоҳад буд.