Maison >interface Web >js tutoriel >Comment puis-je facilement convertir une chaîne normale en chaîne de modèle en JavaScript ?

Comment puis-je facilement convertir une chaîne normale en chaîne de modèle en JavaScript ?

Patricia Arquette
Patricia Arquetteoriginal
2024-11-27 07:41:09737parcourir

How Can I Easily Convert a Regular String to a Template String in JavaScript?

Création de chaînes de modèles à partir de chaînes régulières en JavaScript

La question se pose : est-il possible de convertir facilement une chaîne normale en chaîne de modèle ?

Considérez les éléments suivants :

let a = "b:${b}";

Nous souhaiterons peut-être le convertir en modèle. string :

let b = 10;
console.log(a.template()); // b:10

Pour y parvenir sans recourir à eval ou à des méthodes de génération de code dynamique similaires, il existe une solution simple dans ES6 :

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

Avec cette méthode en place, son utilisation devient simple :

const template = 'Example text: ${text}';
const result = template.interpolate({
  text: 'Foo Boo'
});
console.log(result);

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn