Kaedah untuk menukar JavaScript kepada integer ialah: 1. Gunakan kaedah parseInt(), format sintaks ialah "parseInt (rentetan, asas nombor yang hendak dihuraikan)"; kaedah trunc(), format sintaks ialah "Math.trunc(value)".
Persekitaran pengendalian tutorial ini: sistem Windows 7, versi JavaScript 1.8.5, komputer Dell G3.
Artikel ini akan menyenaraikan dan menerangkan kaedah JavaScript untuk menukar nombor (atau objek berangka) kepada integer.
Sintaks parseInt adalah seperti berikut: parseInt(rentetan, radix)
Rentetan parameter mewakili rentetan yang hendak dihuraikan, atau ia boleh menjadi objek , yang akan dipanggil secara automatik Fungsi toString objek mendapatkan rentetan untuk dihuraikan.
Parameter kedua parseInt boleh menentukan asas nombor yang hendak dihuraikan. Ambil perhatian bahawa nilai adalah antara 2 ~ 36. Jika parameter kurang daripada 2 atau lebih besar daripada 36, parseInt() akan mengembalikan NaN. . Contohnya, dalam kod berikut, hasilnya ialah 8, yang boleh menukar nombor asas lain kepada nombor perpuluhan dengan mudah:
parseInt(10,8) // 结果为8
Apabila nilai radix parameter ialah 0, atau nilainya bukan set Apabila lulus parameter, parseInt() akan menentukan asas nombor berdasarkan rentetan.
Contohnya, jika rentetan bermula dengan "0x", parseInt() akan menghuraikan rentetan yang lain menjadi integer heksadesimal. Jika rentetan bermula dengan 0, ECMAScript v3 membenarkan pelaksanaan parseInt() untuk menghuraikan aksara berikut sebagai digit perlapanan atau heksadesimal. Jika rentetan bermula dengan nombor dari 1 hingga 9, parseInt() akan menghuraikannya menjadi integer perpuluhan.
Nota
1 Hanya nombor pertama dalam rentetan itu akan dikembalikan. Apakah maksudnya? Jika rentetan input ialah "123abc", "123,123", maka hasilnya ialah 123, dan kaedah parseInt secara automatik akan mengabaikan bahagian bukan angka berikut.
2 Ruang pada permulaan dan penghujung rentetan input dibenarkan.
3. parseFloat juga mempunyai dua ciri di atas, tetapi artikel ini tidak akan memfokuskannya.
Math.trunc() akan mengalih keluar bahagian perpuluhan nombor, hanya meninggalkan bahagian integer. Contohnya, kod berikut:
Math.trunc(13.37) // 13 Math.trunc(42.84) // 42 Math.trunc(0.123) // 0 Math.trunc(-0.123) // -0 Math.trunc("-1.123") // -1 Math.trunc(NaN) // NaN Math.trunc("foo") // NaN Math.trunc() // NaN
Apabila jenis masuk bukan nombor, penukaran ketagihan akan dilakukan secara automatik. Tetapi jika ia adalah parameter bukan berangka, NaN dikembalikan.
Pelayar IE tidak menyokong kaedah ini, jadi anda boleh mempertimbangkan polyfill:
Math.trunc || (Math.trunc = function(v){ return v < 0 ? Math.ceil(v) : Math.floor(v); // 使用Math.floor和Math.ceil方法 }) // 或者 if (!Math.trunc) { Math.trunc = function(v) { v = +v; if (!isFinite(v)) return v; return (v - v % 1) || (v < 0 ? -0 : v === 0 ? v : 0); // 返回: // 0 -> 0 // -0 -> -0 // 0.2 -> 0 // -0.2 -> -0 // 0.7 -> 0 // -0.7 -> -0 // Infinity -> Infinity // -Infinity -> -Infinity // NaN -> NaN // null -> 0 }; }
Untuk objek berangka n, anda boleh melakukannya dalam perkara berikut cara Tukar kepada integer:
~~n Dua kali ganda BUKAN
n | n bitwise ATAU operasi (Bitwise ATAU)
n |. Bitwise ATAU dengan 0
n << 0 bit operasi anjakan kiri 0 Bitwise anjakan kiri
n >> 0 Operasi anjakan kanan bitwise 0 Anjakan kanan bitwise
~~1.23 // 1 -1.2 | -1.2 // - 1 -1.2 | 0 // - 1 3.4 >> 0 // 3 3.2 << 0 // 3 5.5 & 5.5 // 5 ~~"1.2" // 1.2
Perhatikan bahawa seperti yang dapat dilihat daripada di atas, rentetan akan secara automatik Menukar nombor.
[Pembelajaran yang disyorkan: tutorial lanjutan javascript
]Atas ialah kandungan terperinci Apakah kaedah untuk menukar javascript kepada integer?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!