Heim > Web-Frontend > js-Tutorial > Warum ersetzen meine JavaScript-Vorlagenliterale keine Variablen?

Warum ersetzen meine JavaScript-Vorlagenliterale keine Variablen?

DDD
Freigeben: 2024-12-06 22:21:12
Original
789 Leute haben es durchsucht

Why Aren't My JavaScript Template Literals Substituting Variables?

Fehlerbehebung bei Vorlagenliteralen: Beheben von Problemen mit der Variablensubstitution

Vorlagenliterale, gekennzeichnet durch Backticks () anstelle von geraden Anführungszeichen, ermöglichen Entwicklern die Einbettung Ausdrücke innerhalb von Zeichenfolgen. Möglicherweise tritt jedoch ein Problem auf, bei dem Vorlagenliterale wie „some ${string}“ oder „some ${string}“ Variablennamen nicht durch ihre Werte ersetzen können.

Ursache:

Dieses Problem tritt auf, wenn stattdessen gerade Anführungszeichen (einfach oder doppelt) verwendet werden Backticks.

Lösung:

Um dieses Problem zu lösen, ersetzen Sie einfach die geraden Anführungszeichen, die das Vorlagenliteral umgeben, durch Backticks, etwa so:

console.log(`categoryName: ${this.categoryName}\ncategoryElements: ${this.categoryElements} `)
Nach dem Login kopieren

Erklärung:

JavaScript-Vorlagenliterale verwenden Backticks als Trennzeichen. Diese Unterscheidung unterscheidet sie von regulären Zeichenfolgen, die gerade Anführungszeichen verwenden. Durch die Verwendung von Backticks weisen Sie JavaScript an, alle im Vorlagenliteral eingebetteten Ausdrücke zu analysieren und auszuwerten, was zur Ersetzung von Variablenwerten führt.

Beispiel:

Bedenken Sie Folgendes Code:

categoryName="name";
categoryElements="element";
console.log(`categoryName: ${this.categoryName}\ncategoryElements: ${categoryElements} `)
Nach dem Login kopieren

Dieser Code gibt Folgendes aus:

categoryName: name
categoryElements: element
Nach dem Login kopieren

In Wenn Sie dagegen gerade Anführungszeichen verwenden würden, würde die Ausgabe wie folgt aussehen:

${this.categoryName}
categoryElements: ${this.categoryElements}
Nach dem Login kopieren

Dies zeigt, wie gerade Anführungszeichen das Vorlagenliteral als reguläre Zeichenfolge behandeln und die Namen der Literalvariablen beibehalten, anstatt die Ausdrücke auszuwerten innerhalb.

Referenz:

  • [Verwendung des Backticks Zeichen () in JavaScript](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Template_literals#Usage_of_the_backtick_character_)

Das obige ist der detaillierte Inhalt vonWarum ersetzen meine JavaScript-Vorlagenliterale keine Variablen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage