Heim > Web-Frontend > js-Tutorial > Wie kann ich eine Zeichenfolge programmgesteuert und sicher in ein Vorlagenliteral in JavaScript konvertieren?

Wie kann ich eine Zeichenfolge programmgesteuert und sicher in ein Vorlagenliteral in JavaScript konvertieren?

Patricia Arquette
Freigeben: 2024-12-02 02:01:09
Original
497 Leute haben es durchsucht

How Can I Programmatically Convert a String to a Template Literal in JavaScript Safely?

Strings programmgesteuert in Vorlagenstrings konvertieren

In Javascript ist es möglich, String-Vorlagen mithilfe von Backticks ( ) oder zu definieren. In einigen Szenarien kann es jedoch vorkommen, dass Sie eine Zeichenfolge haben, die einer Vorlagenzeichenfolge ähnelt, aber syntaktisch keine solche ist.

Zum Beispiel könnten Sie eine Zeichenfolge haben, die wie folgt aussieht:

let a = "b:${b}";
Nach dem Login kopieren

Und Sie möchten es später in eine gültige Vorlagenzeichenfolge konvertieren.

Es ist wichtig zu beachten, dass Methoden wie eval oder new Function für dynamischen Code verwendet werden Die Generierung wird aus Sicherheitsgründen nicht empfohlen. Stattdessen. Sie können die in ES6 implementierte String.prototype.interpolate-Methode wie folgt nutzen:

String.prototype.interpolate = function(params) {
  const names = Object.keys(params);
  const vals = Object.values(params);
  return new Function(...names, `return \`${this}\`;`)(...vals);
};
Nach dem Login kopieren

Mit dieser Methode können Sie Ihren String auf folgende Weise transformieren:

let b = 10;
console.log(a.interpolate({ b }));
Nach dem Login kopieren

Die Die Ausgabe ist b:10, was die erfolgreiche Interpolation der Variablen b in die Zeichenfolge a demonstriert.

Das obige ist der detaillierte Inhalt vonWie kann ich eine Zeichenfolge programmgesteuert und sicher in ein Vorlagenliteral in JavaScript konvertieren?. 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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage