Heim Web-Frontend js-Tutorial Ausführliche Erläuterung der JavaScript-Datentypen und ihrer Konvertierung

Ausführliche Erläuterung der JavaScript-Datentypen und ihrer Konvertierung

Oct 29, 2018 pm 02:19 PM
javascript

Der Inhalt dieses Artikels ist eine detaillierte Erklärung der JavaScript-Datentypen und ihrer Konvertierung. Ich hoffe, dass er für Freunde hilfreich ist.

1. Einführung

Jeder Wert in der JavaScript-Sprache gehört zu einem bestimmten Datentyp. Es gibt sieben Datentypen in JavaScript:

  1. Number (Zahl): Ganzzahlen und Dezimalzahlen (z. B. 1 und 3,14).

  2. String: Text (z. B. Hello World).

  3. Boolean: Zwei spezielle Werte, die Authentizität darstellen, nämlich true (wahr) und false (falsch).

  4. undefiniert: bedeutet „undefiniert“ oder existiert nicht.

  5. null: Zeigt einen Nullwert an, d. h. der Wert hier ist leer.

  6. Objekt: Eine Sammlung verschiedener Werte.

  7. Symbol

Darunter ist Symbol ein neuer grundlegender Datentyp in ES6. In diesem Artikel werden nur die ersten sechs Typen vorgestellt.

2. Detaillierte Erklärung der Datentypen

1. Numerischer Wert (Zahl):

1.1 Ganzzahlen und Gleitkommazahlen

In JavaScript werden alle Zahlen als 64-Bit-Gleitkommazahlen gespeichert, sogar ganze Zahlen.

1 === 1.0 // true
Nach dem Login kopieren

1.2 Präzision

Im internationalen Standard IEEE 754 bestimmen die 64 Binärbits von JavaScript-Gleitkommazahlen, beginnend von ganz links, das erste digitale Vorzeichenbit das Vorzeichen einer Zahl ( 0 ist eine positive Zahl, 1 ist eine negative Zahl), der Exponententeil von 2 bis 12 Ziffern bestimmt die Größe des Werts und der Dezimalteil von 13 bis 64 bestimmt die Genauigkeit des Werts.
1.3 Die Basis numerischer Werte

JavaScript bietet vier Basisdarstellungsmethoden für ganze Zahlen: dezimal, hexadezimal, oktal und binär.

  • Dezimal: Numerischer Wert ohne führende 0.

  • Oktal: Ein Wert mit dem Präfix 0o oder 0O.

  • Hexadezimal: Ein Wert mit dem Präfix 0x oder 0X.

  • Binär: Ein Wert mit dem Präfix 0b oder 0B.

1,4 NaN

NaN bedeutet „Keine Zahl“, was hauptsächlich auftritt, wenn beim Parsen einer Zeichenfolge in eine Zahl ein Fehler auftritt, wie zum Beispiel:

618 - 'x' // NaN
Nach dem Login kopieren
NaN不等于任何值,包括它本身。:
Nach dem Login kopieren
NaN === NaN // false
Nach dem Login kopieren
2 . String:

wird mit „“ oder „“ in Anführungszeichen gesetzt. Wenn es keinen Inhalt enthält, handelt es sich um einen leeren String mit der Länge 0. Die Zeichenfolge mit Leerzeichen wird als Leerzeichenzeichenfolge mit einer Länge von 1 bezeichnet, und die beiden sind unterschiedlich.

2.1 Mehrzeilige Zeichenfolge

Wenn die Zeichenfolge in mehrere Zeilen unterteilt ist, können Sie am Ende jeder Zeile einen Backslash verwenden, andernfalls wird ein Fehler gemeldet. Zusätzlich zur Verwendung von Backslashes können Sie auch den Verkettungsoperator (+) verwenden, um mehrere einzeilige Zeichenfolgen zu verketten. Die Ergebnisse der beiden Methoden sind konsistent. Es wird empfohlen, den Verkettungsoperator (+) zu verwenden.

var longString = 'Long \
long \
long \
string';

longString
// "Long long long string"
Nach dem Login kopieren
rrree

ES6 fügt Backticks (`) hinzu, um mehrzeilige Zeichenfolgen zu schreiben, und die Länge dieser mehrzeiligen Zeichenfolge umfasst die Länge des Wagenrücklaufs.

2.2 Escape

Backslash () hat in der Zeichenfolge eine besondere Bedeutung und wird zur Darstellung einiger Sonderzeichen verwendet, weshalb es auch als Escape-Zeichen bezeichnet wird. Sonderzeichen, die oft mit Backslashes maskiert werden müssen, sind:

  • 0: null (u0000)

  • n: Newline-Zeichen (u000A)

  • r: Eingabetaste (u000D)

  • t: Tabulatorzeichen (u0009)

  • ' : einfaches Anführungszeichen (u0027)

  • ": doppeltes Anführungszeichen (u0022)

    : Backslash (u005C)

2,3 Länge Attribut

Das Längenattribut gibt die Länge des Strings selbst zurück und kann nicht durch Zuweisung geändert werden

3. :

Boolesche Werte haben nur zwei Werte: „true“ und „false“. „True“ wird durch das Schlüsselwort true und „false“ durch das Schlüsselwort false dargestellt . Wenn JavaScript etwas erwartet, sollte der vorhandene Wert an dieser Position automatisch in einen booleschen Wert konvertiert werden, außer undefiniert, null, falsch, 0, NaN , „“ oder „“ (leere Zeichenfolge) werden in „false“ umgewandelt, und andere Werte werden als „wahr“ betrachtet:

Sowohl null als auch undefiniert können „keine“ bedeuten, was sehr unterschiedliche Bedeutungen hat. Der Unterschied zwischen den beiden ist:

null ist ein Objekt, das „leer“ darstellt ist 0, wenn es in einen numerischen Wert umgewandelt wird; undefiniert ist ein primitiver Wert, der „hier keine Definition“ darstellt, es ist NaN, wenn es in einen numerischen Wert umgewandelt wird ist ein Objekt, möchte aber keinen Wert zuweisen. Es wird empfohlen, undefiniert zu verwenden, wenn es ein Nicht-Objekt gibt, Sie aber noch keinen Wert zuweisen möchten

    Ein Objekt ist einfach eine Menge von „Schlüssel-Wert“-Paaren, bei denen es sich um eine ungeordnete zusammengesetzte Datensammlung handelt. Die
  • Generierungsmethode verwendet geschweifte Klammern und weist sie der Variablen zu . Die beiden Schlüssel-Wert-Paare werden durch Kommas getrennt. Der Schlüsselname steht nach „:“. Beispiel:

    var longString = 'Long '
      + 'long '
      + 'long '
      + 'string';
    
    longString
    // "Long long long string"
    Nach dem Login kopieren
    5.2 Schlüsselname
  • 对象的所有键名都是字符串,要加引号,不加也会自动转为字符串。如果键名不符合标识名的条件(比如第一个字符为数字,或者含有空格或运算符),且也不是数字,则必须加上引号,否则会报错。而键值是什么类型就用该类型的格式。

    5.3 属性

    对象的每一个键名又称为“属性”(property),它的“键值”可以是任何数据类型。

    属性的读取

    读取对象的属性,有两种方法,一种是使用点运算符,还有一种是使用方括号运算符。

var obj = {
  p: 'Hello World'
};

obj.p // "Hello World"
obj['p'] // "Hello World",[]内''一定要加
Nach dem Login kopieren

属性的删除delete(无value无key)

var obj = { p: 1 };
Object.keys(obj) // ["p"]

delete obj.p // true
obj.p // undefined
Object.keys(obj) // []
Nach dem Login kopieren

属性的查看Object.keys

var obj = {
  key1: 1,
  key2: 2
};

Object.keys(obj);
// ['key1', 'key2']
Nach dem Login kopieren

属性是否存在:in

in运算符用于检查对象是否包含某个属性(注意,检查的是键名,不是键值),如果包含就返回true,否则返回false。

属性的遍历:for...in 循环

var obj = {a: 1, b: 2, c: 3};

for (var i in obj) {
  console.log('键名:', i);
  console.log('键值:', obj[i]);
}
// 键名: a
// 键值: 1
// 键名: b
// 键值: 2
// 键名: c
// 键值: 3
Nach dem Login kopieren

三、如何知道变量类型?

使用type of可得变量的数据类型,如:

var t = 619;
type of t;//"number"
Nach dem Login kopieren

特别注意的是:

  • 当数据类型为null时,用type of打出的数据类型却是'object'。

  • 当定义了一个函数时,用type of打出的数据类型却是'function'。

四、数据类型的转换

4.1 转为string

  • 使用toString()

var t = 619;
t.toString();//"619"
Nach dem Login kopieren

null没有toString这个API,不能使用toString,会报错

var n = null;
n.toString;
//Uncaught TypeError: Cannot read property 'toString' of null
Nach dem Login kopieren

undefined也会报错

var n = undefined;
n.toString();
//Uncaught TypeError: Cannot read property 'toString' of undefined
Nach dem Login kopieren

object使用toString会得到"[object Object]"。

var object = {name:"po"};
object.toString()
//"[object Object]"
Nach dem Login kopieren
  • 通过与空字符串相加(+"")也能转化为字符串类型,且null、undefined也适用。

  • 使用window.String()

window.String(null)//"null"
Nach dem Login kopieren

为什么1 + '1' = '11'?
这是因为当两个不同数据类型相加时,会优先选择转化为字符串,所以1 + '1'相当于1.toString() + '1',于是结果为两个字符串1相加,即字符串11。

4.2 转为布尔

使用Boolean()

Boolean(0)//false
Boolean('')//false
Boolean(' ')//true
Nach dem Login kopieren

使用!!

!! ''//false
!! ' '//true
Nach dem Login kopieren

五个falsy值:0、NaN、空字符串、null、undefined

4.3 转为Number

使用Number()

Number('1')//1

使用parseInt()

//第二位参数要写,是表示进制

使用parseFloat()

parseFloat('1.23')//1.23

使用 -0

'1'-0//1

使用 +

+ null//0

Das obige ist der detaillierte Inhalt vonAusführliche Erläuterung der JavaScript-Datentypen und ihrer Konvertierung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
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

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
Will R.E.P.O. Crossplay haben?
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

So implementieren Sie ein Online-Spracherkennungssystem mit WebSocket und JavaScript So implementieren Sie ein Online-Spracherkennungssystem mit WebSocket und JavaScript Dec 17, 2023 pm 02:54 PM

So implementieren Sie mit WebSocket und JavaScript ein Online-Spracherkennungssystem. Einführung: Mit der kontinuierlichen Weiterentwicklung der Technologie ist die Spracherkennungstechnologie zu einem wichtigen Bestandteil des Bereichs der künstlichen Intelligenz geworden. Das auf WebSocket und JavaScript basierende Online-Spracherkennungssystem zeichnet sich durch geringe Latenz, Echtzeit und plattformübergreifende Eigenschaften aus und hat sich zu einer weit verbreiteten Lösung entwickelt. In diesem Artikel wird erläutert, wie Sie mit WebSocket und JavaScript ein Online-Spracherkennungssystem implementieren.

WebSocket und JavaScript: Schlüsseltechnologien zur Implementierung von Echtzeitüberwachungssystemen WebSocket und JavaScript: Schlüsseltechnologien zur Implementierung von Echtzeitüberwachungssystemen Dec 17, 2023 pm 05:30 PM

WebSocket und JavaScript: Schlüsseltechnologien zur Realisierung von Echtzeit-Überwachungssystemen Einführung: Mit der rasanten Entwicklung der Internet-Technologie wurden Echtzeit-Überwachungssysteme in verschiedenen Bereichen weit verbreitet eingesetzt. Eine der Schlüsseltechnologien zur Erzielung einer Echtzeitüberwachung ist die Kombination von WebSocket und JavaScript. In diesem Artikel wird die Anwendung von WebSocket und JavaScript in Echtzeitüberwachungssystemen vorgestellt, Codebeispiele gegeben und deren Implementierungsprinzipien ausführlich erläutert. 1. WebSocket-Technologie

Verwendung von JavaScript und WebSocket zur Implementierung eines Echtzeit-Online-Bestellsystems Verwendung von JavaScript und WebSocket zur Implementierung eines Echtzeit-Online-Bestellsystems Dec 17, 2023 pm 12:09 PM

Einführung in die Verwendung von JavaScript und WebSocket zur Implementierung eines Online-Bestellsystems in Echtzeit: Mit der Popularität des Internets und dem Fortschritt der Technologie haben immer mehr Restaurants damit begonnen, Online-Bestelldienste anzubieten. Um ein Echtzeit-Online-Bestellsystem zu implementieren, können wir JavaScript und WebSocket-Technologie verwenden. WebSocket ist ein Vollduplex-Kommunikationsprotokoll, das auf dem TCP-Protokoll basiert und eine bidirektionale Kommunikation zwischen Client und Server in Echtzeit realisieren kann. Im Echtzeit-Online-Bestellsystem, wenn der Benutzer Gerichte auswählt und eine Bestellung aufgibt

So implementieren Sie ein Online-Reservierungssystem mit WebSocket und JavaScript So implementieren Sie ein Online-Reservierungssystem mit WebSocket und JavaScript Dec 17, 2023 am 09:39 AM

So implementieren Sie ein Online-Reservierungssystem mit WebSocket und JavaScript. Im heutigen digitalen Zeitalter müssen immer mehr Unternehmen und Dienste Online-Reservierungsfunktionen bereitstellen. Es ist von entscheidender Bedeutung, ein effizientes Online-Reservierungssystem in Echtzeit zu implementieren. In diesem Artikel wird erläutert, wie Sie mit WebSocket und JavaScript ein Online-Reservierungssystem implementieren, und es werden spezifische Codebeispiele bereitgestellt. 1. Was ist WebSocket? WebSocket ist eine Vollduplex-Methode für eine einzelne TCP-Verbindung.

JavaScript und WebSocket: Aufbau eines effizienten Echtzeit-Wettervorhersagesystems JavaScript und WebSocket: Aufbau eines effizienten Echtzeit-Wettervorhersagesystems Dec 17, 2023 pm 05:13 PM

JavaScript und WebSocket: Aufbau eines effizienten Echtzeit-Wettervorhersagesystems Einführung: Heutzutage ist die Genauigkeit von Wettervorhersagen für das tägliche Leben und die Entscheidungsfindung von großer Bedeutung. Mit der Weiterentwicklung der Technologie können wir genauere und zuverlässigere Wettervorhersagen liefern, indem wir Wetterdaten in Echtzeit erhalten. In diesem Artikel erfahren Sie, wie Sie mit JavaScript und WebSocket-Technologie ein effizientes Echtzeit-Wettervorhersagesystem aufbauen. In diesem Artikel wird der Implementierungsprozess anhand spezifischer Codebeispiele demonstriert. Wir

Einfaches JavaScript-Tutorial: So erhalten Sie den HTTP-Statuscode Einfaches JavaScript-Tutorial: So erhalten Sie den HTTP-Statuscode Jan 05, 2024 pm 06:08 PM

JavaScript-Tutorial: So erhalten Sie HTTP-Statuscode. Es sind spezifische Codebeispiele erforderlich. Vorwort: Bei der Webentwicklung ist häufig die Dateninteraktion mit dem Server erforderlich. Bei der Kommunikation mit dem Server müssen wir häufig den zurückgegebenen HTTP-Statuscode abrufen, um festzustellen, ob der Vorgang erfolgreich ist, und die entsprechende Verarbeitung basierend auf verschiedenen Statuscodes durchführen. In diesem Artikel erfahren Sie, wie Sie mit JavaScript HTTP-Statuscodes abrufen und einige praktische Codebeispiele bereitstellen. Verwenden von XMLHttpRequest

So verwenden Sie insertBefore in Javascript So verwenden Sie insertBefore in Javascript Nov 24, 2023 am 11:56 AM

Verwendung: In JavaScript wird die Methode insertBefore() verwendet, um einen neuen Knoten in den DOM-Baum einzufügen. Diese Methode erfordert zwei Parameter: den neuen Knoten, der eingefügt werden soll, und den Referenzknoten (d. h. den Knoten, an dem der neue Knoten eingefügt wird).

JavaScript und WebSocket: Aufbau eines effizienten Echtzeit-Bildverarbeitungssystems JavaScript und WebSocket: Aufbau eines effizienten Echtzeit-Bildverarbeitungssystems Dec 17, 2023 am 08:41 AM

JavaScript ist eine in der Webentwicklung weit verbreitete Programmiersprache, während WebSocket ein Netzwerkprotokoll für die Echtzeitkommunikation ist. Durch die Kombination der leistungsstarken Funktionen beider können wir ein effizientes Echtzeit-Bildverarbeitungssystem erstellen. In diesem Artikel wird erläutert, wie dieses System mithilfe von JavaScript und WebSocket implementiert wird, und es werden spezifische Codebeispiele bereitgestellt. Zunächst müssen wir die Anforderungen und Ziele des Echtzeit-Bildverarbeitungssystems klären. Angenommen, wir haben ein Kameragerät, das Bilddaten in Echtzeit sammeln kann

See all articles