Html tasodifiy raqam. Muayyan diapazonda JavaScript-da tasodifiy butun sonlarni yaratish kerakmi? Eksponentsiya

Kompyuter dasturi yordamida tasodifiy son hosil qilgandan so'ng, tanlangan raqam asl raqamning bir qismi yoki to'liq bo'lsa, u hali ham tasodifiy son hisoblanadi. Ammo agar u o'zgartirilgan bo'lsa, matematiklar uni tasodifiy raqam sifatida qabul qilmaydilar va ular uni noto'g'ri raqam deb atashlari mumkin. Ammo oddiy vazifa uchun dastur ishlab chiqayotgan bo'lsangiz, bu hisobga olinmaydi. Ammo agar siz lotereya dasturi yoki qimor o'yini kabi qimmatli material uchun tasodifiy raqam yaratish dasturini ishlab chiqayotgan bo'lsangiz, bu holatni hisobga olmasangiz, dasturingiz rahbariyat tomonidan rad etiladi.

Shunday ekan, bunday odamlar uchun mening taklifim:

Math.random() yordamida tasodifiy sonlarni yaratish (deylik, n)

Endi , keyin n * 10 qavat sizning javobingiz va agar kerak bo'lsa, n * 100 qavat sizning javobingiz va hokazo.

Endi rolingizga qadam qo'ying:

Siz ma'lum diapazondagi raqamlarni so'ragansiz. (Bunday holatda, siz ushbu diapazonda noxolis bo'lasiz. - dan raqamni olish, matritsani aylantirish sizni ga qaratadi, lekin o'lim xolis bo'lsa, bu tasodifiy holatdir.)

Shunday qilib, diapazoningizni ko'rib chiqing ==> diapazondagi elementlar soni = 247 - 78 + 1 = 170; (Chunki ikkala chegara ham o'z ichiga oladi

/*1-usul:*/ var i = 78, j = 247, k = 170, a =, b =, c, d, e, f, l = 0; for(; i $(maxGeneratedValue)."); ) else if (maks< min) { throw new Error("max (${max}) must be >= min ($(min)."); ) else if (min === max) ( qaytish min; ) yaratilsin; do (generatsiyalangan = crypto.getRandomValues(new Uint32Array(1)); ) while (hosil qilingan > maxUnbiased ); return min + (hosil qilingan% mumkinResultValues); ); console.log(randomInteger(-8, 8)); // -2 console.log(randomInteger(0, 0)); // 0 console.log(randomInteger (0, 0xFFFFFFFF)); // 944450079 console.log(randomInteger(-1, 0xFFFFFFFF)); // Xato: -1 dan 4294967295 gacha boʻlgan 4294967296 diapazoni > 4294967295. Ar-294967295. console. ().map(n => randomInteger(8, 12))); //

Ko'pincha JavaScript-da hisob-kitoblar biz xohlagan natijalarni bermaydi. Albatta, biz raqamlar bilan xohlagan narsani qilishimiz mumkin - yuqoriga yoki pastga yaxlitlash, diapazonlarni o'rnatish, keraksiz raqamlarni ma'lum miqdordagi kasrlargacha kesib tashlash, barchasi kelajakda bu raqam bilan nima qilishni xohlashingizga bog'liq. Nega yaxlitlash kerak? JavaScript-ning qiziqarli jihatlaridan biri shundaki, u aslida butun sonlarni saqlamaydi, biz darhol suzuvchi nuqtali raqamlar bilan ishlaymiz. Bu, ko'pgina kasr qiymatlarini o'nli kasrlarning cheklangan sonida ifodalab bo'lmasligi bilan birgalikda, JavaScript-da biz quyidagi natijalarni olishimiz mumkin:

0.1 * 0.2; > 0.020000000000000004 0.3 - 0.1 > 0.19999999999999998
Amaliy maqsadlar uchun bu noaniqlik muhim emas, bizning holatlarimizda biz kvintillion qismlardagi xato haqida gapiramiz, ammo bu ba'zilarni xafa qilishi mumkin. Valyutalarni, foizlarni yoki fayl o'lchamlarini ifodalovchi raqamlar bilan ishlashda biz biroz g'alati natijalarga erishishimiz mumkin. Ushbu noaniqliklarni tuzatish uchun biz natijalarni yaxlitlashimiz kerak va o'nlik aniqlikni o'rnatish kifoya.

Raqamlarni yaxlitlash amaliy qo'llanmalarga ega, biz ma'lum bir diapazondagi raqamni boshqarishimiz mumkin, masalan, biz faqat o'nli qism bilan ishlamasdan, qiymatni eng yaqin butun songa yaxlitlashni xohlaymiz.

O'nli kasrlarni yaxlitlash O'nli kasrni kesish uchun toFixed yoki toPrecision usulidan foydalaning. Ularning ikkalasi ham bitta argumentni oladi, natijada natijada mos ravishda nechta muhim raqam (ya'ni raqamda ishlatiladigan raqamlarning umumiy soni) yoki o'nli kasrlar (o'nlik nuqtadan keyingi raqam) ko'rsatilishi kerak:
  • Agar toFixed() uchun argument aniqlanmagan bo'lsa, u sukut bo'yicha nolga teng bo'ladi, bu 0 kasrli kasrni bildiradi, argumentning maksimal qiymati 20 ga teng.
  • Agar toPrecision ga argument berilmasa, raqam tegmasdan qoladi
  • randNum = 6,25 bo'lsin; randNum.toFixed(); > "6" Math.PI.toPrecision(1); > "3" randNum = 87,335; randNum.toFixed(2); > "87,33" randNum = 87,337; randNum.toPrecision(3); > "87,3"
    ToFixed() va toPrecision() usullari ham natijaning raqamni emas, balki satrli tasvirini qaytaradi. Bu randNum bilan yaxlitlangan qiymatni yig'ishda raqamlar yig'indisini emas, balki satrlarni birlashtirishni hosil qiladi:

    RandNum = 6,25 bo'lsin; let rounded = randNum.toFixed(); // "6" console.log(randNum + yaxlitlangan); > "6.256"
    Agar natija raqamli ma'lumotlar turi bo'lishini istasangiz, parseFloat-dan foydalanishingiz kerak bo'ladi:

    RandNum = 6,25 bo'lsin; let rounded = parseFloat(randNum.toFixed(1)); console.log (yumaloq); > 6.3
    E'tibor bering, 5 qiymatlari kamdan-kam hollardan tashqari yaxlitlanadi.

    ToFixed() va toPrecision() usullari foydalidir, chunki ular nafaqat kasr qismini kesibgina qolmay, balki oʻnli kasrlarni ham qoʻshishi mumkin, bu valyuta bilan ishlashda qulay:

    ButunNum = 1 bo'lsin dollarsCents = butunNum.toFixed(2); console.log(dollarscents); > "1.00"
    E'tibor bering, agar butun sonlar aniqlikning o'zidan katta bo'lsa, toPrecision ilmiy yozuvda natija beradi:

    Num = 123,435 num.toPrecision(2); > "1.2e+2"

    O'nli kasrlar bilan yaxlitlash xatolaridan qanday qochish kerak Ba'zi hollarda toFixed va toPrecision 5 qiymatini pastga va yuqoriga yaxlitlash:

    numTest = 1.005; numTest.toFixed(2); > "1.00"
    Yuqoridagi hisoblash natijasi 1 emas, 1,01 bo'lishi kerak edi. Agar shunga o'xshash xatolikka yo'l qo'ymaslikni istasangiz, biz Jek L Mur tomonidan taklif qilingan hisob-kitob uchun eksponensial raqamlardan foydalanadigan yechimdan foydalanishimiz mumkin:

    Funktsiya round(qiymat, o'nli kasrlar) ( Qaytish Raqam(Math.round(qiymat+"e"+o'nlik)+"e-"+o'nlik); )
    Hozir:

    Tur (1.005,2); > 1.01
    Agar siz yuqorida ko'rsatilganidan ko'ra mustahkamroq yechimni istasangiz, MDN ga o'tishingiz mumkin.

    Mashina epsilonini yaxlitlash O'nli sonlarni yaxlitlashning muqobil usuli ES6 da joriy qilingan. Mashina epsilonini yaxlitlash ikkita suzuvchi nuqta raqamlarini taqqoslashda o'rtacha xato chegarasini ta'minlaydi. Yaxlitlashsiz, taqqoslashlar quyidagiga o'xshash natijalarni berishi mumkin:

    0,1 + 0,2 === 0,3 > noto'g'ri
    To‘g‘ri taqqoslash uchun funksiyamizda Math.EPSILON dan foydalanamiz:

    epsEqu(x, y) funktsiyasi ( Math.abs(x - y) ni qaytaradi< Number.EPSILON * Math.max(Math.abs(x), Math.abs(y)); }
    Funktsiya ikkita argumentni oladi: birinchisi joriy hisob, ikkinchisi kutilgan natija. U ikkalasining solishtirmasini qaytaradi:

    EpsEqu(0,1 + 0,2, 0,3) > rost
    Barcha zamonaviy brauzerlar allaqachon ES6 matematik funktsiyalarini qo'llab-quvvatlaydi, ammo IE 11 kabi brauzerlarda qo'llab-quvvatlashni istasangiz, polifilllardan foydalaning.

    Kasr qismini kesish Yuqorida keltirilgan barcha usullar o'nlik sonlarga yaxlitlash mumkin. Raqamni ikkita kasrga kesish uchun avval uni 100 ga ko'paytirishingiz kerak, so'ngra olingan natijani 100 ga bo'lishingiz kerak:

    Funktsiya kesilgan(num) ( Qaytish Math.trunc(num * 100) / 100; ) kesilgan(3.1416) > 3.14
    Agar siz usulni har qanday o'nli kasrga moslashtirmoqchi bo'lsangiz, bit bo'yicha ikkilamchi inkordan foydalanishingiz mumkin:

    Funktsiya qisqartirildi(num, decimalPlaces) ( ruxsat bersin, numPowerConverter = Math.pow(10, decimalPlaces); qaytish ~~(num * numPowerConverter)/numPowerConverter; )
    Hozir:

    RandInt = 35,874993 bo'lsin; kesilgan(randInt,3); > 35.874

    Eng yaqin songa yaxlitlash O'nli sonni eng yaqin songa yuqoriga yoki pastga yaxlitlash uchun, qaysi biri yaqin bo'lsa, Math.round() dan foydalaning:

    Math.round(4.3) > 4 Math.round(4.5) > 5
    E'tibor bering, "qiymatning yarmi", 0,5 matematika qoidalariga muvofiq yaxlitlanadi.

    Eng yaqin butun songa yaxlitlash Agar har doim pastga yaxlitlashni istasangiz, Math.floor dan foydalaning:

    Math.floor(42.23); > 42 Math.floor(36,93); > 36
    Yaxlitlash barcha raqamlar uchun, shu jumladan manfiy raqamlar uchun ham amal qilishini unutmang. Osmono'par binoni cheksiz ko'p qavatli, shu jumladan pastki qavatdagi qavatlarni (salbiy raqamlarni ifodalovchi) tasavvur qiling. Agar siz 2 dan 3 gacha bo'lgan eng past darajadagi liftda bo'lsangiz (bu qiymat -2,5 ni bildiradi), Math.floor sizni -3 ga olib boradi:

    Math.floor(-2,5); > -3
    Ammo bu vaziyatdan qochishni istasangiz, barcha zamonaviy brauzerlarda (IE/Edge tashqari) qo'llab-quvvatlanadigan Math.trunc dan foydalaning:

    Math.trunc(-41,43); > -41
    MDN-da siz Math.trunc-ni brauzerlarda va IE/Edge-da qo'llab-quvvatlaydigan polifillni topasiz.

    Eng yaqin butun songa yaxlitlash Boshqa tomondan, har doim yaxlitlash kerak bo'lsa, Math.ceil dan foydalaning. Yana cheksiz liftni eslang: raqam manfiy yoki yo'qligidan qat'i nazar, Math.ceil har doim "yuqoriga" ko'tariladi:

    Math.ceil(42,23); > 43 Math.ceil(36,93); > 37 Math.ceil(-36,93); > -36

    Kerakli songa yuqoriga/pastga yaxlitlash Agar biz 5 ning eng yaqin karraligacha yaxlitlashni istasak, eng oson yo'li bu raqamni 5 ga bo'ladigan, yaxlitlaydigan va keyin uni bir xil miqdorga ko'paytiruvchi funktsiyani yaratishdir:

    Funktsiya roundTo5(num) ( Qaytish Math.round(num/5)*5; )
    Hozir:

    RoundTo5(11); > 10
    Agar siz o'z qiymatingizni ko'paytirmoqchi bo'lsangiz, biz boshlang'ich qiymatni va ko'paytmani o'tkazadigan umumiyroq funktsiyadan foydalanamiz:

    roundToMultiple(son, ko'p) funksiyasi ( Math.round(num/multiple)*multiple; ni qaytaradi)
    Hozir:

    Boshlang'ich raqam = 11 bo'lsin; ko'p = 10; roundToMultiple(dastlabki raqam, bir nechta); > 10;

    Raqamni diapazonda aniqlash Biz diapazonda joylashgan x qiymatini olishni istagan ko'p holatlar mavjud. Masalan, bizga 1 dan 100 gacha qiymat kerak bo'lishi mumkin, lekin biz 123 qiymatiga ega bo'ldik. Buni tuzatish uchun biz min (raqamlar to'plamining eng kichigini qaytaradi) va max (har qanday to'plamning eng kattasini qaytaradi) dan foydalanishimiz mumkin. raqamlardan). Bizning misolimizda diapazon 1 dan 100 gacha:

    LowBound = 1 bo'lsin; highBound = 100 bo'lsin; numInput = 123 bo'lsin; let clamped = Math.max(lowBound, Math.min(numInput, highBound)); console.log(qisqichli); > 100;
    Shunga qaramay, Daniel X. Mur tomonidan taklif qilingan yechimdan foydalanib, operatsiyani qayta ishlatishimiz va hamma narsani funktsiyaga o'rashimiz mumkin:

    Number.prototype.clamp = function(min, max) ( return Math.min(Math.max(bu, min), max); );
    Hozir:

    NumInput.clamp(lowBound, highBound); > 100;

    Gauss yaxlitlash Gauss yaxlitlash, shuningdek, bankirning yaxlitlashi deb ham ataladi, eng yaqin juft songa yaxlitlashni o'z ichiga oladi. Ushbu yaxlitlash usuli statistik xatoliksiz ishlaydi. Yaxshiroq yechim Tim Daun tomonidan taklif qilingan:

    Funktsiya gaussRound(num, decimalPlaces) ( Let d = decimalPlaces || 0, m = Math.pow(10, d), n = +(d ? num * m: num).toFixed(8), i = Math.floor (n), f = n - i, e = 1e-8, r = (f > 0,5 - e && f< 0.5 + e) ? ((i % 2 == 0) ? i: i + 1) : Math.round(n); return d ? r / m: r; }
    Hozir:

    GaussRound(2.5) > 2 gaussRound(3.5) > 4 gaussRound(2.57,1) > 2.6
    CSS-da o'nlik:

    JavaScript ko'pincha HTML elementlari uchun pozitsion xaritalarni yaratish uchun ishlatilganligi sababli, agar biz elementlarimiz uchun o'nlik qiymatlarni yaratsak nima bo'ladi deb o'ylayotgan bo'lishingiz mumkin:

    #box (kengligi: 63.667731993px; )
    Yaxshi xabar shundaki, zamonaviy brauzerlar blok modelidagi o'nlik qiymatlarni, shu jumladan foiz yoki piksel birliklarini hurmat qiladi.

    Saralash Ko'pincha biz ba'zi elementlarni saralashimiz kerak, masalan, bizda bir qator o'yin yozuvlari mavjud va ular o'yinchi darajasining kamayish tartibida tartibga solinishi kerak. Afsuski, standart sort() usuli hayratlanarli cheklovlarga ega: u oddiy inglizcha so'zlar bilan yaxshi ishlaydi, lekin raqamlar, noyob belgilar yoki katta harflar so'zlariga duch kelganda darhol buziladi. Alifbo bo'yicha saralash Massivni alifbo tartibida tartiblash oddiy vazifa bo'lishi kerakdek tuyuladi:

    Meva = ["butternut squash", "o'rik", "qovun"] bo'lsin; fruit.sort(); > "o'rik", "yog'li qovoq", "qovun"]
    Biroq, elementlardan biri katta harf bo'lishi bilanoq muammoga duch kelamiz:

    Meva = ["butternut squash", "o'rik", "Cantalope"] bo'lsin; fruit.sort(); > "Qovun", "o'rik", "yog'li qovoq"]
    Buning sababi, sukut bo'yicha, tartiblovchi Unicode'da ko'rsatilgan birinchi belgini solishtiradi. Unicode - platformadan qat'i nazar, dasturdan qat'i nazar, tildan qat'i nazar, har qanday belgi uchun noyob kod. Misol uchun, agar siz kodlar jadvaliga qarasangiz, "a" belgisi U+0061 qiymatiga ega (0x61 o'n oltilik raqamda), "C" belgisi esa Unicodeda avvalroq kelgan U+0043 (0x43) kodiga ega. jadval "a" belgisidan ko'ra.

    Aralash katta harflar bo'lishi mumkin bo'lgan massivni saralash uchun biz barcha elementlarni vaqtincha kichik harflarga aylantirishimiz yoki ba'zi argumentlar bilan localeCompare() usuli yordamida tartiblash tartibini aniqlashimiz kerak. Qoida tariqasida, bunday holatda takroriy foydalanish uchun darhol funktsiyani yaratish yaxshiroqdir:

    Funktsiya alphaSort(arr) ( arr.sort(funktsiya (a, b) (qaytish a.localeCompare(b, "en", ("sezuvchanlik": "baza")); )); ) meva = ["butternut squash" qilsin "," o'rik "," Cantaloupe "]; alphaSort (meva) >
    Agar siz massivni teskari alifbo tartibida tartiblashni istasangiz, funksiyadagi a va b o‘rinlarini almashtiring:

    Funktsiya alphaSort(arr) ( arr.sort(funktsiya (a, b) (qaytish b.localeCompare(a, "en", ("sezuvchanlik": "baza")); )); ) meva = ["butternut squash" qilaylik "," o'rik "," Cantaloupe "]; alphaSort(meva) > ["Qantalupa", "yog'li qovoq", "o'rik"]
    Shuni ta'kidlash kerakki, localeCompare argumentlar bilan ishlatiladi, biz uni IE11+ tomonidan qo'llab-quvvatlanishini ham unutmasligimiz kerak, IE ning eski versiyalari uchun biz uni argumentlarsiz va kichik harflarda ishlatishimiz mumkin:

    Funktsiya caseSort(arr) ( arr.sort(funksiya (a, b) (qaytish a.toLowerCase().localeCompare(b.toLowerCase()); )); ) meva = ["butternut squash", "o'rik", "Mushkli qovun"]; caseSort(meva) > ["o‘rik", "yog‘oq qovoq", "Qovun"]

    Raqamli saralash Bularning barchasi biz yuqorida o'yin yozuvlari qatori haqida gapirgan misolga taalluqli emas. Ba'zi sonli massivlarda saralash juda yaxshi ishlaydi, lekin bir nuqtada natija oldindan aytib bo'lmaydigan bo'lishi mumkin:

    HighScores = bo'lsin; highScores.sort(); >
    Gap shundaki, sort() usuli leksikografik taqqoslashni amalga oshiradi: bu raqamlar qatorga aylantiriladi va taqqoslashlar yana ushbu satrning birinchi belgisini Unicode jadvalidagi belgilar tartibida moslashtirish orqali amalga oshiriladi. . Shuning uchun biz yana tartiblash tartibini aniqlashimiz kerak:

    HighScores = bo'lsin; highScores.sort(funksiya(a,b) (qaytish a - b; )); >
    Yana raqamlarni teskari tartibda saralash uchun funktsiyadagi a va b pozitsiyalarini almashtiring.

    JSONga o'xshash tuzilmani saralash Nihoyat, agar bizda o'yin yozuvlari qatori sifatida taqdim etilgan JSONga o'xshash ma'lumotlar tuzilmasi bo'lsa:

    Ballar bo'lsin = [ ( "ism": "Daniel", "ball": 21768 ), ( "ism": "Maykl", "ball": 33579 ), ( "ism": "Alison", "ball": 38395 )];
    ES6+ da siz strelka funksiyalaridan foydalanishingiz mumkin:

    Scores.sort((a, b) => b.score - a.score));
    Ushbu yordamga ega bo'lmagan eski brauzerlar uchun:

    Scores.sort(funksiya(a, b) (qaytish a.score - b.score ));
    Ko'rib turganingizdek, JavaScript-da tartiblash juda noaniq narsa, umid qilamanki, bu misollar hayotni qandaydir tarzda osonlashtiradi.

    Quvvat funksiyalari bilan ishlash Koʻrsatkichlar dastlab natural sonni oʻziga qayta-qayta koʻpaytirish natijasida aniqlangan amal boʻlib, a ning kvadrat ildizi qachon kvadratni beradigan sondir. Biz bu funktsiyalardan doimiy ravishda kundalik hayotda matematika darslarida, jumladan, maydonlarni, hajmlarni hisoblashda yoki hatto jismoniy modellashtirishda foydalanishimiz mumkin.

    JavaScript-da quvvat funksiyasi Math.pow() sifatida ifodalanadi va yangi ES7 standartida yangi eksponentatsiya operatori joriy etildi - " * * ".

    Raqamni n-darajali darajaga ko'tarish uchun Math.pow() funksiyasidan foydalaning, bunda birinchi argument darajaga ko'tariladigan son, ikkinchi argument esa ko'rsatkichdir:

    Math.pow(3,2) > 9
    Belgilanishning bu shakli 3 kvadrat yoki 3 × 3 degan ma'noni anglatadi, natijada 9 ga olib keladi. Yana bir misol keltirish mumkin, albatta:

    Math.pow(5,3); > 125
    Ya'ni, 5 kub yoki 5 × 5 × 5 125 ga teng.

    ECMAScript 7 JavaScript-ning navbatdagi versiyasidir, printsipial jihatdan biz yangi taklif qilingan eksponentsiya operatoridan foydalanishimiz mumkin - * *, bu belgi ko'rinishi yanada tavsiflovchi bo'lishi mumkin:

    3 ** 2 > 9
    Hozirgi vaqtda ushbu operatorni qo'llab-quvvatlash juda cheklangan, shuning uchun uni ishlatish tavsiya etilmaydi.

    Quvvat funksiyasi turli vaziyatlarda foydali bo'lishi mumkin. Oddiy misol, bir soat ichida soniyalar sonini hisoblash: Math.pow (60,2).

    Kvadrat va kub ildizlari Math.sqrt() va Math.cbrt() Math.pow() ga qarama-qarshidir. Biz eslaganimizdek, a ning kvadrat ildizi qachon kvadratni beradigan sondir.

    Math.sqrt(9) > 3
    Shu bilan birga, a ning kub ildizi kubga ko'tarilganda a ni beradigan sondir.

    Math.cbrt(125) > 5
    Math.cbrt() JavaScript spetsifikatsiyasiga yaqinda kiritilgan va shuning uchun faqat zamonaviy brauzerlarda qo'llab-quvvatlanadi: Chrome 38+, Firefox va Opera 25+ va Safari 7.1+. Internet Explorer bu ro'yxatda yo'qligini sezasiz, lekin MDN da polifillni topasiz.

    Misollar Albatta, biz ushbu funktsiyalardan birida butun son bo'lmagan qiymatlardan foydalanishimiz mumkin:

    Math.pow(1.25, 2); > 1,5625 Math.cbrt(56,57) > 3,8387991760286138
    E'tibor bering, bu salbiy argument qiymatlaridan foydalanganda ham juda yaxshi ishlaydi:

    Math.pow(-5,2) > 25 Math.pow(10,-2) > 0,01
    Biroq, bu kvadrat ildiz uchun ishlamaydi:

    Math.sqrt(-9) > NaN
    Matematik tahlildan bilamizki, xayoliy son manfiy sonlarning kvadrat ildizlariga tegishli. Va bu bizni murakkab raqamlar bilan ishlashning boshqa texnikasiga olib kelishi mumkin, ammo bu boshqa hikoya.

    Raqamlarning kvadrat va kub ildizlarini topish uchun Math.pow() da kasrlardan foydalanishingiz mumkin. Kvadrat ildiz 0,5 ko'rsatkichidan foydalanadi:

    Math.pow(5, 0,5); // = Math.sqrt(5) = 5 ** (1/2) > 2,23606797749979
    Biroq, suzuvchi nuqtaning injiqliklari tufayli siz to'g'ri natijani aniq taxmin qila olmaysiz:

    Math.pow(2.23606797749979,2) > 5.000000000000001
    Bunday vaziyatlarda siz belgilarni raqamdan kesib tashlash yoki biron bir qiymatga yaxlitlash uchun murojaat qilishingiz kerak bo'ladi.

    Ba'zi odamlar, noma'lum sabablarga ko'ra, JavaScript-da Math.pow() funktsiyasini Math.exp() bilan chalkashtirib yuborishadi, bu umuman raqamlar uchun eksponensial funktsiyadir. Eslatma: Ingliz tilida "eksponent" "eksponent" deb tarjima qilingan, shuning uchun bu ko'proq ingliz tilida so'zlashuvchilarga tegishli, garchi ko'rsatkich uchun indeks, quvvat kabi muqobil nomlar mavjud.

    Matematik konstantalar JavaScript-da matematika bilan ishlash bir qator o'rnatilgan konstantalar tufayli osonlashadi. Bu konstantalar Math obyektining xossalaridir. Shuni ta'kidlash kerakki, doimiylar CamelCase notatsiyasida emas, balki katta harflarda yoziladi.

    So'rovda faqat ro'yxatdan o'tgan foydalanuvchilar ishtirok etishlari mumkin. , Iltimos.

    Teglar: teglar qo'shish