Apakah kaedah untuk menukar javascript kepada integer?

醉折花枝作酒筹
Lepaskan: 2023-01-07 11:44:43
asal
3785 orang telah melayarinya

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)".

Apakah kaedah untuk menukar javascript kepada integer?

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.

Gunakan parseInt

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
Salin selepas log masuk

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.

Menggunakan kaedah Math.trunc

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
Salin selepas log masuk

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
    };
}
Salin selepas log masuk

Operasi bit binari

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

  • n & n Untuk operasi DAN (Bitwise AND)

Untuk contoh, kodnya adalah seperti berikut:
   ~~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
Salin selepas log masuk

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!

Label berkaitan:
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