Darsliklar JavaScript Sonlar

JavaScript JavaScript Sonlar

Sonlar (numbers) — har qanday hisob-kitobning asosi. JavaScript’ning o’ziga xosligi shundaki, u boshqa ko’p tillardan farqli o’laroq, butun va kasr sonlarni ajratmaydi — hammasi bitta number turida saqlanadi. Bu qulaylik ham, ba’zi nozikliklar ham keltirib chiqaradi.

NumberJavaScript’da barcha sonlar (butun va kasr) uchun yagona tur. U ichki tarzda 64-bitli suzuvchi nuqta formatida saqlanadi.

Sonlar bilan ishlash

Butun va kasr sonlar bir xil turda saqlanadi:

let butun = 26;
let kasr = 3.14;
let manfiy = -100;

console.log(butun + kasr);
console.log(typeof butun);
29.14
number

typeof operatori qiymat turini ko’rsatadi — ikkalasi ham number. JavaScript butun va kasrni ichki tarzda bir xil ushlaydi.

Songa aylantirish

Foydalanuvchidan olingan ma’lumot ko’pincha matn (string) bo’ladi. Uni songa aylantirish uchun Number, parseInt yoki parseFloat ishlatiladi:

let matn = "100";
console.log(Number(matn) + 50);      // to'liq songa
console.log(parseInt("26 yosh"));    // boshidagi butun sonni oladi
console.log(parseFloat("3.14 pi"));  // kasr sonni oladi
150
26
3.14

parseInt va parseFloat matn boshidagi sonni ajratib oladi, qolgan matnni tashlaydi. Bu foydalanuvchi kiritgan ma’lumotni qayta ishlashda juda foydali.

Foydali son metodlari

Sonlar bilan ishlashda eng ko’p kerak bo’ladigan metodlarni jadvalda ko’ramiz:

Metod Vazifasi Misol natijasi
toFixed(n) kasr xonalarini belgilaydi "3.14"
Number.isInteger() butun ekanini tekshiradi true
toString() matnga o’giradi "26"

toFixed ayniqsa pul bilan ishlashda muhim — kasr xonalar sonini aniq belgilaydi:

let narx = 15000.5678;
console.log(narx.toFixed(2));
15000.57

toFixed(2) sonni ikki kasr xonaga yaxlitladi va matn sifatida qaytardi. Bu narxlarni chiroyli ko’rsatishda doimo ishlatiladi.

Maxsus qiymatlar: NaN va Infinity

JavaScript’da ikki maxsus son qiymati bor. NaN (“Not a Number”) — noto’g’ri hisob natijasi, Infinity — cheksizlik:

console.log(10 / 0);          // cheksizlik
console.log(Number("salom")); // songa aylantirib bo'lmadi
Infinity
NaN

"salom" ni songa aylantirib bo’lmagani uchun NaN chiqdi. Foydalanuvchi ma’lumotini qayta ishlaganda, natija NaN emasligini isNaN() bilan tekshirish oqilona.

Xulosa

Bu bo’limda JavaScript’ning yagona number turini, songa aylantirish (Number, parseInt, parseFloat), foydali metodlar (toFixed) va maxsus qiymatlar (NaN, Infinity) ni ko’rib chiqdik. Sonlar — hisob-kitobning asosi. Keyingi darsda massivlar — ko’p qiymatni saqlashga o’tamiz.