Heim >Web-Frontend >js-Tutorial >Welche Methoden gibt es zum Konvertieren von Javascript in Ganzzahlen?

Welche Methoden gibt es zum Konvertieren von Javascript in Ganzzahlen?

醉折花枝作酒筹
醉折花枝作酒筹Original
2021-07-21 15:06:043829Durchsuche

Die Methoden zum Konvertieren von JavaScript in Ganzzahlen sind: 1. Verwenden Sie die Methode parseInt(), das Syntaxformat ist „parseInt (Zeichenfolge, die Basis der zu analysierenden Zahl)“ 2. Verwenden Sie die Methode Math.trunc() , das Syntaxformat ist „Math. trunc(value)“.

Welche Methoden gibt es zum Konvertieren von Javascript in Ganzzahlen?

Die Betriebsumgebung dieses Tutorials: Windows 7-System, JavaScript-Version 1.8.5, Dell G3-Computer.

In diesem Artikel werden JavaScript-bezogene Methoden zum Konvertieren einer Zahl (oder eines numerischen Objekts) in eine Ganzzahl aufgelistet und erläutert.

Verwenden Sie parseInt

Die Syntax von parseInt lautet wie folgt: parseInt(string, radix)

Der Parameter string stellt die zu analysierende Zeichenfolge dar, oder es kann ein Objekt sein, und die toString-Funktion des Objekts wird automatisch aufgerufen um die zu analysierende Zeichenfolge zu erhalten.

Der zweite Parameter von parseInt kann die Basis der zu analysierenden Zahl angeben. Beachten Sie, dass der Wert zwischen 2 und 36 liegt. Wenn der Parameter kleiner als 2 oder größer als 36 ist, gibt parseInt() NaN zurück. Im folgenden Code ist das Ergebnis beispielsweise 8, wodurch andere Basiszahlen problemlos in Dezimalzahlen umgewandelt werden können:

parseInt(10,8) // 结果为8

Wenn der Wert des Parameters radix 0 ist oder der Parameter nicht festgelegt ist, wird parseInt() Der Die Basis der Zahl wird anhand der Zeichenfolge ermittelt.

Wenn die Zeichenfolge beispielsweise mit „0x“ beginnt, analysiert parseInt() den Rest der Zeichenfolge in hexadezimale Ganzzahlen. Wenn eine Zeichenfolge mit 0 beginnt, ermöglicht ECMAScript v3 eine Implementierung von parseInt(), um die folgenden Zeichen als Oktal- oder Hexadezimalziffern zu analysieren. Wenn die Zeichenfolge mit einer Zahl zwischen 1 und 9 beginnt, analysiert parseInt() sie in eine dezimale Ganzzahl.

Hinweise

1. Es wird nur die erste Zahl in der Zeichenfolge zurückgegeben. Was bedeutet das? Wenn die Eingabezeichenfolge „123abc“, „123,123“ lautet, ist das Ergebnis 123 und die parseInt-Methode ignoriert automatisch die folgenden nicht numerischen Teile.

2. Leerzeichen am Anfang und Ende der Eingabezeichenfolge sind zulässig.

3. parseFloat hat auch die beiden oben genannten Eigenschaften, aber dieser Artikel wird sich nicht darauf konzentrieren.

Mit der Methode Math.trunc

Math.trunc() wird der Dezimalteil der Zahl entfernt und nur der ganzzahlige Teil beibehalten. Zum Beispiel der folgende Code:

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

Wenn der eingehende Typ keine Zahl ist, wird automatisch eine süchtig machende Konvertierung durchgeführt. Wenn es sich jedoch um einen nicht numerischen Parameter handelt, wird NaN zurückgegeben.

IE-Browser unterstützt diese Methode nicht, daher können Sie Polyfill in Betracht ziehen:

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
    };
}

Binäre Bitoperation

Für numerisches Objekt n können Sie es auf folgende Weise in eine Ganzzahl umwandeln:

  • ~~n Doppelbit Extraktion Inverse (Doppeltes bitweises NICHT)

  • n |. n bitweise ODER-Verknüpfung (Bitweises ODER)

  • n | Linksschiebeoperation 0 Bits (Bitweise Linksverschiebung)

  • n >> 0 Bit Rechtsschiebeoperation 0 Bits (Bitweise Rechtsverschiebung)

  • n & n ist die UND-Operation (Bitweises UND)

  • Der Code lautet beispielsweise wie folgt:

       ~~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
Beachten Sie, dass Zeichenfolgen, wie oben zu sehen ist, Zahlen bei bitweisen Operationen automatisch konvertieren.

【Empfohlenes Lernen:

Javascript-Tutorial für Fortgeschrittene

Das obige ist der detaillierte Inhalt vonWelche Methoden gibt es zum Konvertieren von Javascript in Ganzzahlen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn