\\';const sanitized = escapeHTML`User input: ${userInput}`;console.log(sanitized); // Output: \\\"User input: \\\"

Conclusão

Literais de modelo marcados fornecem uma ferramenta versátil para manipulação dinâmica de strings em JavaScript. Eles podem simplificar tarefas como internacionalização e formatação de strings personalizadas, levando a um código mais expressivo e de fácil manutenção.

","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"}}
"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Compreendendo literais de modelo marcados em JavaScript

Compreendendo literais de modelo marcados em JavaScript

Publicado em 2024-11-08
Navegar:749

Understanding Tagged Template Literals in JavaScript

O que são literais de modelo marcados?

Um literal de modelo marcado envolve um literal de modelo prefixado com uma função, chamada tag. Esta função pode processar e manipular o conteúdo do literal. Aqui está um exemplo simples:

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);

Casos de uso para literais de modelo marcados

  1. Internacionalização (i18n)

Literais de modelo marcados podem traduzir strings dinamicamente com base na localidade do usuário. Aqui está um exemplo usando japonês:

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: "こんにちは、アリス!元気ですか?"

2. Formatação de string personalizada

Eles também podem implementar lógica de formatação personalizada, como escape de 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>"

Conclusão

Literais de modelo marcados fornecem uma ferramenta versátil para manipulação dinâmica de strings em JavaScript. Eles podem simplificar tarefas como internacionalização e formatação de strings personalizadas, levando a um código mais expressivo e de fácil manutenção.

Declaração de lançamento Este artigo foi reproduzido em: https://dev.to/elukuro/understanding-tagged-template-literals-in-javascript-4m4p?1 Se houver alguma violação, entre em contato com [email protected] para excluí-la
Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3