Heim >Web-Frontend >js-Tutorial >Wie kann ich eine Zeichenfolge programmgesteuert und sicher in ein Vorlagenliteral in JavaScript konvertieren?
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}";
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); };
Mit dieser Methode können Sie Ihren String auf folgende Weise transformieren:
let b = 10; console.log(a.interpolate({ b }));
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!