⊗jsPmBsATC 43 of 505 menu

Maglumat Görnüşleriniň Awtomatik Öwrülişi

Bilşiňiz ýaly, JavaScript-da setirler dyrnak içine alynmaly. Setiriň ähli nyşanlary san bolup biler:

let a = '123';

Bu ýagdaýda üýtgeýji a hem setir bolýar, ýöne käbir nýuans bilen.

Nýuans şonda: eger sanlardan ybarat setir üstünde haýsy-da bolsa bir matematik amal ýerine ýetirilse - bu amal, hakykatdanam bizde setir däl-de sanlarymyz bar ýaly, ýerine ýetiriler:

alert('2' * '3'); // 6 çykar

Bu ýagda JavaScript, biz setirler üçin ýaramsyz, ýöne sanlar üçin ýaramly amaly ýerine ýetirmekçi bolýandygymyzy görýär.

Şeýle hem, ol biz setirlerimiziň aslynda dyrnak içine alynan sanlar ýaly bolýandyklaryny görýär. Şonuň üçin JavaScript bu setirleri sanlara awtomatik öwürýär we olaryň üstünde degşilikli matematik amaly ýerine ýetirýär.

Bu işleýär, eger setirlerimizde diňe sanlar bolsa. Olarda iň bolmanda bir harp bolsa - JavaScript amaly nädogry hasaplar we onyň netijesi NaN bahasy bolar:

alert('2' * '3s'); // NaN çykar

Şeýle hem, awtomatik öwrüliş amal matematik täjiginden dogry bolan, ýöne setirler üçin ýaramly bolmadyk ýagdaýlarda hem bolýar.

Mysal üçin, setirleri (ýöne sanlary bolsa) köpeltmek, bölmek, aýyrmak bolmaýar, şonuň üçin şeýle ähli amallarda sanlardan ybarat setirleriň sanlara awtomatik öwrülişi bolar.

Şeýle-de, setirler hem, sanlar ýaly, + operator arkaly goşulýar. Bu bolsa, goşmak ýagdaýynda awtomatik öwrüliş bolmajakdygyny aňladýar:

let a = '1' + '2'; alert(a); // '12' çykar - setirleriň goşulmagy boldy

Eger goşulýanlaryň biri san, beýlekisi bolsa setir bolsa, hemişe setir ýeňýär:

let a = 1 + '2'; alert(a); // '12' çykar

Şeýle ýagdaýlarda JavaScript, tersine, sanlary setirlere awtomatik öwürýär we setirleriň goşulmagyny ýerine ýetirýär.

Ýöne, goşulýanlar iki-den köp bolanda käbir nýuanslar bar: bu ýagda belli bir görnüşe öwrüliş amallaryň ýerine ýetiriliş tertibine bagly.

Aşakdaky mysalda ilki 2 we 3 san hökmünde goşular, soňra bolsa netije setir '1'-a '5' setiri hökmünde goşular, bu bolsa netijede '15' setirini berer:

let a = '1' + (2 + 3); alert(a); // '15' çykar

Eger ýaýlary aýyrsak, onda ähli zadyň ýerine ýetirilişi çepden sag tarapa bolup geçer. Ýagny ilki setir '1' san 2 bilen goşular we netijede setir '12' bolup çykar. Soňra bu setir san 3 bilen goşular we netijede setir '123' bolup çykar:

let a = '1' + 2 + 3; alert(a); // '123' çykar

Şeýle-de aşakdaky mysalda sanlar 2 we 3 başynda ýazylan, şonuň üçin ilki olar san hökmünde goşular, netijede san 5 berer, soňra bolsa bu sana setir '1' goşular, netijede setir '51' berer:

let a = 2 + 3 + '1'; alert(a); // '51' çykar

Kody işletmezden, ekrana näme çykjakdygyny kesgitle:

let a = '5' + '2'; alert(a);

Kody işletmezden, ekrana näme çykjakdygyny kesgitle:

let a = '5' + 2; alert(a);

Kody işletmezden, ekrana näme çykjakdygyny kesgitle:

let a = 5 + '2'; alert(a);

Kody işletmezden, ekrana näme çykjakdygyny kesgitle:

let a = 5 + 2; alert(a);

Kody işletmezden, ekrana näme çykjakdygyny kesgitle:

let a = '5' * '2'; alert(a);

Kody işletmezden, ekrana näme çykjakdygyny kesgitle:

let a = '5' - '2'; alert(a);

Kody işletmezden, ekrana näme çykjakdygyny kesgitle:

let a = '5' / '2'; alert(a);

Kody işletmezden, ekrana näme çykjakdygyny kesgitle:

let a = '5' % '2'; alert(a);

Kody işletmezden, ekrana näme çykjakdygyny kesgitle:

let a = '5s' * '2'; alert(a);

Kody işletmezden, ekrana näme çykjakdygyny kesgitle:

let a = '5s' + '2'; alert(a);

Kody işletmezden, ekrana näme çykjakdygyny kesgitle:

let a = (-'5') + (-'2'); alert(a);

Kody işletmezden, ekrana näme çykjakdygyny kesgitle:

let a = '5' * 1 + '2' * 1; alert(a);

Kody işletmezden, ekrana näme çykjakdygyny kesgitle:

let a = '5' * '1' + '2' * '1'; alert(a);

Kody işletmezden, ekrana näme çykjakdygyny kesgitle:

let a = '' + 3 + 1; alert(a);
Türkmen
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkçeЎзбекOʻzbekTiếng Việt
Biz sahypanyň işlemegi, analitika we şahsyýetleşdirmek üçin cookie ulanýarys. Maglumatlaryň işlenişi Gizlinlik syýasaty boýunça amala aşyrylýar.
hemmesini kabul et sazlamak ret et