Conversion de chaînes en chaînes de modèles par programmation
En Javascript, il est possible de définir des modèles de chaînes à l'aide de backticks ( ) ou. Cependant, dans certains scénarios, vous pouvez rencontrer une situation dans laquelle vous avez une chaîne qui ressemble à une chaîne de modèle mais qui n'en est pas une syntaxiquement.
Par exemple, vous pourriez avoir une chaîne ressemblant à :
let a = "b:${b}";
Et vous aimeriez le convertir plus tard en une chaîne de modèle valide.
Il est essentiel de noter que l'utilisation de méthodes comme eval ou new Function pour la génération de code dynamique est non recommandé pour des raisons de sécurité. Plutôt. vous pouvez exploiter la méthode String.prototype.interpolate, implémentée dans ES6 comme suit :
String.prototype.interpolate = function(params) { const names = Object.keys(params); const vals = Object.values(params); return new Function(...names, `return \`${this}\`;`)(...vals); };
En utilisant cette méthode, vous pouvez transformer votre chaîne de la manière suivante :
let b = 10; console.log(a.interpolate({ b }));
Le la sortie sera b:10, ce qui démontre l'interpolation réussie de la variable b dans la chaîne a.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!