March 12, 2022

Number

https://javascript.info/number

men raqamlarni bilardim db oylardim ammo hech narsani bilas ekanman ichida juda kop narsalar bor ekan unda birga organamiz

1-juda kop nol(0) ni yozishni qisqartirish

x=120000 => x=12e4 ==12*10000

yaniy raqamni yozamiz keyin e va nechta 0 bolishi kkligi

2-endi shu amalni teskarisi yaniy 0 butun 0.00 bolganidachi

x=0.00012 => x=12e-4

x=3,0012 => x=12e-4+3 ==12/10000+3

Convertatsiya sting=>number

1-usul +

+'12' === 12

2-usul Number

Number('12')=>12

ammo bu holatlarda satr ichiga biror harf aralashib qolsa NaN qiymat qaytaradi ammo chet el valyutalarida 12$ db yozilgan holatga duch kelamiz buni esa tepadagi usullar bn amalga oshira olmaymiz yechim:

3-usul parseInt('12a') =>12

parseInt('12.4a') =>12

onli kasrlarni faqat butun qismini qaytaradi

4-usul parseFloat('12.4#39;) =>12.4

barchasini qaytaradi

NaN haqida gaplashamiz

NaN===NaN false sababi NaN bu xatolik xatolik xatolikka teng bolmaydi logika jihatidan

ammo bazi hollarda qiymat NaN qaytarishini tekshirishimiz kk shu holatda

isNaN(NaN) => true

isNaN('str') => true

isNaN(12)=>false

isNaN(true)=>false

isNaN(false) false

isNaN(null) false

isNaN() true

isNaN('') false

faqat raqamlikka tekshirish isFinite()

isFinite('12') => true

isFinite('') => true

isFinite('as') => false

isFinite('null') => false

isFinite(null) => true

yana bir antiqa holat

0.1+0.2===0.3 => false

sabab barcha narsalar xotirada 2lik sanoq sistemasida saqlanadi

0.1 onlik

0.0001100110011001100110011001100110011001100110011001101

0.2 onlik

0.001100110011001100110011001100110011001100110011001101 ikkilik

eni shu ikkisini bir biriga qoshib keyin 2 lik sanoq sistemasiga aylantirsak natija

0.30000000000000004

bu holatdan qutulishiz uchun

toFixed(n) n- nechtagacha yaxlitlashni bildiradi

q=12.45543323

q.toFixed(4) =>12.4554

yaxlitlash

1-usul toFixed yuqorida kordik

2-usul Math.floor(1.1) => 1 -1.1 => -2 3.1=>3 100.9 => 100

son oqida chapga qarab yaxlitlash

3-usul Math.ceil(3.1) => 4 -1.9=> -1 3.5=> 4

son oqida o`ngga qarab yaxlatlash

4-usul Math.round(3.1) => 3 3.5 => 4 3.4 => 3 3.9 => 4

0 dan keyingi keluvchi son 1-4 oraliqda bolsa sonning ozi qaytadi 5-9 oraliqda bolsa bitta kattasi

5-usul Math.trunc(1.1) => 1 1.9 => 1

hech qanday ozgarishsiz faqat butun qismini qaytaradi

Math.max(1,2,5,-3,2,4) => 5

sonlar ichidagi eng kattasini qaytaradi

Math.min(1,2,3,-1) => -1

sonlar ichidagi eng kichik raqam

Math.pow(x, n) x ning n chi darajasi