Rumah > hujung hadapan web > tutorial js > Analisis contoh penukaran jenis eksplisit javascript_kemahiran javascript

Analisis contoh penukaran jenis eksplisit javascript_kemahiran javascript

WBOY
Lepaskan: 2016-05-16 16:02:23
asal
1232 orang telah melayarinya

Contoh dalam artikel ini menerangkan kaedah penukaran jenis eksplisit dalam javascript. Kongsikan dengan semua orang untuk rujukan anda. Analisis khusus adalah seperti berikut:

Walaupun js boleh melakukan banyak penukaran jenis automatik, kadangkala masih perlu melakukan penukaran jenis eksplisit atau untuk menjadikan logik kod jelas dan boleh dibaca.

Cara paling mudah untuk melakukan penukaran jenis paparan ialah menggunakan fungsi Boolean(), Number(), String() atau Object():

Number("3") //3
String(false)  //"false"
false.toString()//同上
Boolean([]) //true
Object(3)  //new Number(3)
Salin selepas log masuk

Sesetengah pengendali dalam js akan melakukan penukaran jenis tersirat, seperti:
Jika satu operan operator ialah rentetan, ia menukarkan operan yang lain kepada rentetan
Operator unary menukarkan operan mereka kepada nombor; Satu dolar! Operator menukarkan operan kepada nilai Boolean dan menafikannya
Anda selalunya boleh melihat penggunaan penukaran jenis berikut dalam kod:

x+"" //等价于String(x)
+x //等价于Number(x)
x-0 //同上
!!x //等价于Boolean(x),是双叹号哦
Salin selepas log masuk
Kaedah toString() yang ditakrifkan oleh kelas Nombor boleh menukar nombor kepada perwakilan rentetan nombor asas lain (antara 2-36) mengikut asas penukaran (radix):

var n =11;
bin_str = n.toString(2);
oct_str = "0" + n.toString(8);
hex_str = "0x" + n.toString(16);
Salin selepas log masuk
Kelas Nombor juga mentakrifkan 3 kaedah lain untuk senario penukaran jenis nombor kepada rentetan:

toFixed() menukar nombor kepada rentetan berdasarkan bilangan digit yang ditentukan selepas titik perpuluhan. Ia tidak pernah menggunakan tatatanda eksponen.

11.113344.toFixed(5) //"11.11334"
Salin selepas log masuk
toExponential() menggunakan tatatanda eksponen untuk menukar nombor kepada rentetan bentuk eksponen, dengan hanya satu digit sebelum titik perpuluhan dan bilangan digit selepas titik perpuluhan yang ditentukan oleh parameter:

11.113359.toExponential(5) //"1.11134e+1"
Salin selepas log masuk
toPrecision() menukar nombor kepada rentetan mengikut bilangan digit bererti yang ditentukan atau menukarnya kepada bentuk eksponen jika bilangan digit bererti kurang daripada bilangan bahagian integer nombor itu.

3 kaedah di atas akan membundarkan atau pad 0 dengan sewajarnya.

Perlu diambil perhatian bahawa fungsi Number() yang disebutkan di atas hanya boleh ditukar berdasarkan nombor perpuluhan dan aksara haram tidak boleh muncul. Kita boleh menggunakan fungsi global (kaedah bukan milik mana-mana kelas) parseInt atau fungsi parseFloat untuk menukar rentetan kepada nombor;

parseInt() hanya menghuraikan integer, manakala parseFloat() boleh menghuraikan integer dan nombor titik terapung.

Jika awalan rentetan ialah "0x" atau "0X", parseInt() akan mentafsirkannya sebagai nombor heksadesimal, kedua-dua parseInt dan parseFloat akan melangkau sebarang bilangan ruang utama dan menghuraikan sebanyak mungkin aksara berangka; aksara bukan ruang pertama ialah nombor haram, NaN dikembalikan.

parseInt boleh menerima parameter pilihan kedua, yang menentukan asas untuk penukaran digital Julat nilai ialah 2-36.

Saya harap artikel ini akan membantu reka bentuk pengaturcaraan JavaScript semua orang.

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan