Movatterモバイル変換


[0]ホーム

URL:


  1. Tecnologia Web para desenvolvedores
  2. JavaScript
  3. Referência JavaScript
  4. Objetos Globais
  5. String
  6. String.raw()

Esta página foi traduzida do inglês pela comunidade.Saiba mais e junte-se à comunidade MDN Web Docs.

View in EnglishAlways switch to English

String.raw()

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since ⁨setembro de 2015⁩.

O método estáticoString.raw() é uma função tag demodelos literais, similar ao prefixor no Python ou o prefixo@ no C# para string literais (Mas não éidêntico, existe uma diferença, veja explicações nessadiscussão). Ele é usado para pegar as strings no formato "cru" de modelos literais, isto é, substituições (ex:${foo}) são processados, mas "escapes" (ex:.\n) não são.

Experimente

// Create a variable that uses a Windows// path without escaping the backslashes:const filePath = String.raw`C:\Development\profile\aboutme.html`;console.log(`The file was uploaded from: ${filePath}`);// Expected output: "The file was uploaded from: C:\Development\profile\aboutme.html"

Sintaxe

String.raw(callSite, ...sub)String.raw`templateString`

Parâmetros

callSite

Modelo bem-formatado de objeto de local de chamada, como{ raw: ['foo', 'bar', 'baz'] }.

...substitutions

Contém os valores das substituições.

templateString

Ummodelo string, opcionalmente com substituições (${...}).

Valor retornado

A forma crua de uma string de um modelo string dado.

Exceções

TypeError

UmTypeError é jogado se o primeiro argumento não é um Objeto bem formado.

Descrição

Na maioria dos casos,String.raw() é usado com modelos de strings. A primeira sintaxe mencionada acima raramente é usada, porque o mecanismo JavaScript a chamará com os argumentos apropriados para você, assim como com outrasfunções de tag.

String.raw() é a única função de tag embutida de strings de template; ele funciona exatamente como a função de modelo padrão e executa a concatenação. Você pode até reimplementá-lo com o código JavaScript normal.

Exemplos

UsandoString.raw()

js
String.raw`Hi\n${2 + 3}!`;// 'Hi\n5!', o caractere após 'Hi'// não é um caractere de quebra de linha,// '\' e 'n' são dois caracteres.String.raw`Hi\u000A!`;// 'Hi\u000A!', o mesmo aqui, agora nós teremos os caracteres//  \, u, 0, 0, 0, A, 6.// Todos as formas de quebra de linha serão ineficazes// e as contra barras estarão inclusas no valor retornado.// Você pode confirmar isso verificando a propriedade .length// da string.let name = "Bob";String.raw`Hi\n${name}!`;// 'Hi\nBob!', substituições são processadas.// Normalmente você não chamaria String.raw() como uma função,// mas para simular `t${0}e${1}s${2}t` você pode fazer:String.raw({ raw: "test" }, 0, 1, 2); // 't0e1s2t'// Note que 'test', uma string, é um objeto array-like// O código abaixo é equivalente a:// `foo${2 + 3}bar${'Java' + 'Script'}baz`String.raw(  {    raw: ["foo", "bar", "baz"],  },  2 + 3,  "Java" + "Script",); // 'foo5barJavaScriptbaz'

Especificações

Specification
ECMAScript® 2026 Language Specification
# sec-string.raw

Compatibilidade com navegadores

Veja também

Help improve MDN

Learn how to contribute

This page was last modified on byMDN contributors.


[8]ページ先頭

©2009-2025 Movatter.jp