\\';const sanitized = escapeHTML`User input: ${userInput}`;console.log(sanitized); // Output: \\\"User input: \\\"
タグ付きテンプレート リテラルは、JavaScript での動的な文字列操作のための多用途ツールを提供します。国際化やカスタム文字列の書式設定などのタスクを簡素化し、より表現力豊かで保守しやすいコードを実現できます。
","image":"http://www.luping.net/uploads/20241007/17283092466703e7fece88e.jpg","datePublished":"2024-11-08T07:21:58+08:00","dateModified":"2024-11-08T07:21:58+08:00","author":{"@type":"Person","name":"luping.net","url":"https://www.luping.net/articlelist/0_1.html"}}タグ付きテンプレート リテラルには、タグと呼ばれる関数がプレフィックスとして付けられたテンプレート リテラルが含まれます。この関数は、リテラルの内容を処理および操作できます。簡単な例を次に示します:
function tag(strings, ...values) { console.log(strings); console.log(values); return 'Processed string'; } const name = 'Alice'; const greeting = tag`Hello, ${name}! How are you?`; console.log(greeting);
タグ付きテンプレート リテラルは、ユーザーのロケールに基づいて文字列を動的に翻訳できます。以下は日本語を使用した例です:
function i18n(strings, ...values) { const translations = { 'Hello, ': 'こんにちは、', '! How are you?': '!元気ですか?', }; return strings.reduce((result, str, i) => result translations[str] (values[i] || ''), ''); } const name = 'アリス'; const greeting = i18n`Hello, ${name}! How are you?`; console.log(greeting); // Output: "こんにちは、アリス!元気ですか?"
HTML のエスケープなどのカスタム書式設定ロジックを実装することもできます。
function escapeHTML(strings, ...values) { const escape = (str) => str.replace(/&/g, '&').replace(/, '<').replace(/>/g, '>'); return strings.reduce((result, str, i) => result str escape(values[i] || ''), ''); } const userInput = ''; const sanitized = escapeHTML`User input: ${userInput}`; console.log(sanitized); // Output: "User input: <script>alert("XSS")</script>"
タグ付きテンプレート リテラルは、JavaScript での動的な文字列操作のための多用途ツールを提供します。国際化やカスタム文字列の書式設定などのタスクを簡素化し、より表現力豊かで保守しやすいコードを実現できます。
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3