ホームページ > ウェブフロントエンド > jsチュートリアル > ES6 テンプレート リテラルは実行時に再利用できますか?

ES6 テンプレート リテラルは実行時に再利用できますか?

Linda Hamilton
リリース: 2024-11-02 17:49:02
オリジナル
581 人が閲覧しました

Can ES6 Template Literals Be Reusable at Runtime?

ES6 テンプレート リテラルの制限を暴く: 実行時の再利用性の実現

ES6 テンプレート リテラルは強化された文字列操作機能を提供しますが、よくある誤解の 1 つは、ES6 テンプレート リテラルは不変であり、変更できないということです。実行時に動的に再利用または置換できます。ただし、Function コンストラクターを使用した賢いアプローチを使用すると、その場で評価および補間できる再利用可能なテンプレート リテラルを作成できます。

再利用可能なテンプレート リテラルの謎を解く

再利用可能なテンプレートの鍵リテラルは、それらを中間形式として扱うことにあります。テンプレート文字列を Function オブジェクトに変換することで、動的データを使用して呼び出して最終文字列を生成できるテンプレート関数を効率的に作成できます。

<code class="javascript">const templateString = `\`This is
my ${expletive} reusable
template!\``;

const templateFunction = new Function(`return \`${templateString}\``);

let expletive = 'curious';
console.log(templateFunction.call({ expletive }));</code>
ログイン後にコピー

これにより、次の場所で罵倒変数の値を置き換えることができます。

ヘルパー関数による再利用性の強化

プロセスをさらに簡素化するために、テンプレート文字列からテンプレートへの変換を自動化するヘルパー関数を導入できます。再利用可能なテンプレート関数:

<code class="javascript">function reusableTemplate(templateString) {
  return `return \`${templateString.replace('{','$${')}\``;
}

const template = reusableTemplate(`This is
my {expletive} reusable
template!`);

console.log(new Function(template)({ expletive: 'AMAZING' }));</code>
ログイン後にコピー

このヘルパー関数により、動的な置換を伴う再利用可能なテンプレートの定義と使用が簡単になります。

利点と制限

再利用可能なテンプレート リテラルには、いくつかの利点があります。 :

  • 実行時の動的データの補間
  • コードベースのさまざまな部分でのテンプレートの再利用を容易にします
  • コードの明確さと保守性を促進します
  • 高度なサポートテンプレート タグなどのテンプレート機能

ただし、いくつかの制限もあります。

  • 関数ベースのテンプレートを使用する場合、テンプレート タグには追加の考慮事項が必要です
  • インラインJavaScript ロジックは遅延補間のためサポートされていません

全体的に、ES6 テンプレート リテラルは、Function コンストラクターで拡張すると、新しいレベルの多用途性と再利用性が解放され、単なる静的な文字列ではなく、むしろリテラルであることがわかります。動的な文字列操作とテンプレート生成のための強力なツール。

以上がES6 テンプレート リテラルは実行時に再利用できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート