JavaScript-Typenkonvertierung
- Vorherige Seite JS-typeof
- Nächste Seite JS-Deconstruction
Number()
Konvertieren Sie numerische Werte,String()
Konvertieren Sie Zeichenfolgen,Boolean()
Konvertieren Sie Boolean-Werte.
JavaScript-Datentypen
In JavaScript gibt es fünf DatenTypen, die Werte enthalten können:
- Zeichenkette (string)
- Zahl (number)
- Boolscher (boolean)
- Objekt (object)
- Funktion (function)
Es gibt drei Arten von Objekten:
- Objekt (Object)
- Datum (Date)
- Array (Array)
Es gibt zwei Datentypen, die keine Werte enthalten können:
- null
- undefined
typeof-Operator
Sie können typeof
Verwenden Sie die Operator, um den Datentyp eines JavaScript-Variables zu bestimmen.
Beispiel
typeof "Bill" // Rückgabe "string" typeof 3.14 // Rückgabe "number" typeof NaN // Rückgabe "number" typeof false // gibt "boolean" zurück typeof [1,2,3,4] // gibt "object" zurück typeof {name:'Bill', age:62} // gibt "object" zurück typeof new Date() // gibt "object" zurück typeof function () {} // gibt "function" zurück typeof myCar // gibt "undefined" zurück * typeof null // gibt "object" zurück
Bitte beachten Sie:
- Der Datentyp von NaN ist numerisch
- Der Datentyp von Array ist Objekt
- Der Datentyp von Datum ist Objekt
- Der Datentyp von null ist Objekt
- Der Datentyp einer nicht definierten Variable ist undefined
- Der Datentyp einer Variable, die noch nicht zugewiesen wurde, ist auch undefined
Man kann nicht typeof
kann man bestimmen, ob ein JavaScript-Objekt ein Array (oder ein Datum) ist.
Die Datentypen von typeof
typeof
Der Operator ist kein Variable. Er gehört zu den Operatoren. Operatoren (z.B. +
-
*
/
) gibt keinen Datentyp zurück.
aber,typeof
wird immerGibt einen String zurückenthält den Typ des Operanden).
Konstruktor-Eigenschaft
constructor
Die Eigenschaft gibt den Konstruktorfunktion aller JavaScript-Variablen zurück.
Beispiel
"Bill".constructor // gibt "function String() { [native code] }" zurück (3.14).constructor // gibt "function Number() { [native code] }" zurück false.constructor // gibt "function Boolean() { [native code] }" zurück [1,2,3,4].constructor // gibt "function Array() { [native code] }" zurück {name:'Bill', age:62}.constructor // gibt "function Object() { [native code] }" zurück new Date().constructor // Rückgabe "function Date() { [native code] }" function () {}.constructor // Rückgabe "function Function(){ [native code] }"
Sie können überprüfen, constructor
Eigenschaft, um zu bestimmen, ob ein Objekt ein Array ist (enthalten den Worten "Array"):
Beispiel
function isArray(myArray) { return myArray.constructor.toString().indexOf("Array") > -1;
Oder noch einfacher, Sie können überprüfen, ob ein Objekt eine Array-Funktion ist:
Beispiel
function isArray(myArray) { return myArray.constructor === Array;
Sie können überprüfen, constructor
Eigenschaft, um zu bestimmen, ob ein Objekt ein Datum ist (enthalten den Worten "Date"):
Beispiel
function isDate(myDate) { return myDate.constructor.toString().indexOf("Date") > -1;
Oder noch einfacher, Sie können überprüfen, ob ein Objekt ein Datumsfunktion ist:
Beispiel
function isDate(myDate) { return myDate.constructor === Date;
JavaScript-Typenkonvertierung
JavaScript-Variablen können in neue Variablen und in einen anderen Datentyp umgewandelt werden:
- Durch die Verwendung von JavaScript-Funktionen
- Durch JavaScript selbstAutomatischUmwandlung
Numerische Werte in Strings umwandeln
Globale Methode String()
Es kann Zahlen in Strings umwandeln.
Es kann für alle Arten von Zahlen, Texten, Variablen oder Ausdrücken verwendet werden:
Beispiel
String(x) // Rückgabe eines Strings aus der numerischen Variable x String(123) // Rückgabe eines Strings aus dem numerischen Text 123 String(100 + 23) // Rückgabe eines Strings aus einem numerischen Wert in einer Ausdrucksform
Zahlenmethoden toString()
Gleiches gilt auch.
Beispiel
x.toString() (123).toString() (100 + 23).toString()
InZahlenmethodenIn diesem Kapitel werden Sie mehr Methoden lernen, die zur Konvertierung von numerischen Werten in Strings verwendet werden können:
Methode | Beschreibung |
---|---|
toExponential() | Rückgabe eines Strings, bei dem die Zahl gerundet wird und in Exponentenschreibweise dargestellt wird. |
toFixed() | Rückgabe eines Strings, bei dem die Zahl gerundet wird und eine bestimmte Anzahl von Dezimalstellen verwendet wird. |
toPrecision() | Rückgabe eines Strings, um Zahlen auf eine angegebene Länge zu schreiben. |
Boolesches in String konvertieren
Globale Methode String()
Kann Boolesches in Strings konvertieren.
String(false) // gibt "false" zurück String(true) // gibt "true" zurück
Boolsche Methoden toString()
Gleiches gilt auch.
false.toString() // gibt "false" zurück true.toString() // gibt "true" zurück
Datum in String konvertieren
Globale Methode String()
Daten in Strings konvertieren
String(Date())
Datumsmethoden toString()
Gleiches gilt auch.
Beispiel
Date().toString()
InDatumsmethodenIn diesem Kapitel finden Sie weitere Methoden, um Daten in Strings zu konvertieren:
Methode | Beschreibung |
---|---|
getDate() | Tag (1-31) als Wert erhalten |
getDay() | oder als Wert (0-6) der Woche |
getFullYear() | Vierstellige Jahre (yyyy) erhalten |
getHours() | Stunde (0-23) erhalten |
getMilliseconds() | Millisekunden (0-999) erhalten |
getMinutes() | Minuten (0-59) erhalten |
getMonth() | Monat (0-11) erhalten |
getSeconds() | Sekunden (0-59) erhalten |
getTime() | Zeit erhalten (Millisekunden seit dem 1. Januar 1970) |
String in numerische Werte konvertieren
Globale Methode Number()
String in Zahl konvertieren
Strings, die Zahlen enthalten (z.B. "3.14"), werden in Zahlen konvertiert (z.B. 3.14).
leere Strings in 0 konvertiert.
Andere Strings werden in NaN
(Not a number,not a number)。
Number("3.14") // gibt 3.14 zurück Number(" ") // gibt 0 zurück Number("") // gibt 0 zurück Number("99 88") // gibt NaN zurück
InZahlenmethodenIn diesem Kapitel finden Sie weitere Methoden, um Strings in Zahlen zu konvertieren:
Methode | Beschreibung |
---|---|
parseFloat() | den String analysieren und eine Fließkommazahl zurückgeben. |
parseInt() | den String analysieren und eine Ganzzahl zurückgeben. |
unärer + Operator
unärer +
OperatorKann verwendet werden, um Variablen in Zahlen zu konvertieren:
Beispiel
var y = "5"; // y ist ein String var x = + y; // x ist eine Zahl
Wenn eine Variable nicht in eine Zahl konvertiert werden kann, bleibt sie dennoch eine Zahl, aber der Wert ist NaN
(Not a number):
Beispiel
var y = "Bill"; // y ist ein String var x = + y; // x ist eine Zahl (NaN)
Boolesche in numerische Werte konvertieren
Globale Methode Number()
Man kann auch Boolesche in Zahlen konvertieren.
Number(false) // gibt 0 zurück Number(true) // gibt 1 zurück
Datum in eine Nummer konvertieren
Globale Methode Number()
kann verwendet werden, um Daten in eine Nummer zu konvertieren.
d = new Date(); Number(d)
Datumsmethoden getTime()
Gleiches gilt auch.
d = new Date(); d.getTime()
Automatische Typkonvertierung
Wenn JavaScript versucht, mit einem "falschen" Daten Typ umzugehen, versucht er, diesen Wert in den "richtigen" Typ zu konvertieren.
Das Ergebnis ist nicht immer das, was Sie erwarten:
5 + null // gibt 5 zurück weil null in 0 konvertiert wird "5" + null // gibt "5null" zurück weil null in "null" konvertiert wird "5" + 2 // gibt 52 zurück weil 2 in "2" konvertiert wird "5" - 2 // gibt 3 zurück weil "5" in 5 konvertiert wird "5" * "2" // gibt 10 zurück weil "5" und "2" in 5 und 2 konvertiert werden
automatische Strings-Transformation auf
JavaScript ruft automatisch die toString()
Funktion, wenn Sie versuchen, ein "Objekt" oder eine "Variable" auszugeben:
document.getElementById("demo").innerHTML = myVar; // Wenn myVar = {name:"Fjohn"} // toString wird zu "[object Object]" // Wenn myVar = [1,2,3,4] // toString wird zu "1,2,3,4" // Wenn myVar = new Date() // toString wird zu ""
Zahlen und Boolesche Werte werden ebenfalls konvertiert, aber nicht sichtbar:
// Wenn myVar = 123 // toString wird zu "123" // Wenn myVar = true // toString wird zu "true" // Wenn myVar = false // toString wird zu "false"
Tabelle der Typumwandlungen in JavaScript
Im folgenden Tisch sind die Ergebnisse der Konvertierung verschiedener JavaScript-Werte in Zahlen, Zeichenfolgen und Boolesche Werte aufgelistet:
Ursprünglicher Wert | In Zahlen umwandeln | In Zeichenfolgen umwandeln | In logische Werte umwandeln | Versuchen Sie es selbst |
---|---|---|---|---|
false | 0 | "false" | false | Versuchen Sie es selbst |
true | 1 | "true" | true | Versuchen Sie es selbst |
0 | 0 | "0" | false | Versuchen Sie es selbst |
1 | 1 | "1" | true | Versuchen Sie es selbst |
"0" | 0 | "0" | true |
Versuchen Sie es selbst |
"000" | 0 | "000" | true |
Versuchen Sie es selbst |
"1" | 1 | "1" | true | Versuchen Sie es selbst |
NaN | NaN | "NaN" | false | Versuchen Sie es selbst |
Infinity | Infinity | "Infinity" | true | Versuchen Sie es selbst |
-Infinity | -Infinity | "-Infinity" | true | Versuchen Sie es selbst |
"" | 0 |
"" | false |
Versuchen Sie es selbst |
"20" | 20 | "20" | true | Versuchen Sie es selbst |
"zwanzig" | NaN | "zwanzig" | true | Versuchen Sie es selbst |
[ ] | 0 |
"" | true | Versuchen Sie es selbst |
[20] | 20 |
"20" | true | Versuchen Sie es selbst |
[10,20] | NaN | "10,20" | true | Versuchen Sie es selbst |
["zwanzig"] | NaN | "zwanzig" | true | Versuchen Sie es selbst |
["zehn","zwanzig"] | NaN | "zehn,zwanzig" | true | Versuchen Sie es selbst |
function(){} | NaN | "function(){}" | true | Versuchen Sie es selbst |
{ } | NaN | "[object Object]" | true | Versuchen Sie es selbst |
null | 0 |
"null" | false | Versuchen Sie es selbst |
undefined | NaN | "undefined" | false | Versuchen Sie es selbst |
Der Wert in Anführungszeichen zeigt einen Stringwert an.
Rote WerteZeigt (bestimmte) Werte an, die ein Programmierer vielleicht nicht erwartet.
- Vorherige Seite JS-typeof
- Nächste Seite JS-Deconstruction