A \n
sequência universal de caracteres de nova linha está em Javascript para todas as plataformas? Caso contrário, como determino o caractere para o ambiente atual?
Não estou perguntando sobre o elemento de nova linha HTML ( <BR/>
). Estou perguntando sobre a sequência de caracteres da nova linha usada nas seqüências de caracteres JavaScript.
javascript
newline
Landon Kuhn
fonte
fonte
getValue
função que aceitavalue
e retornavalue.replace(/\r\n/g,'\n')
- apenas para manter a saída consistente entre navegadores / plataformas.Respostas:
Acabei de testar alguns navegadores usando esse pouco de JavaScript:
IE8 e Opera 9 no Windows
\r\n
. Todos os outros navegadores que testei (Safari 4 e Firefox 3.5 no Windows e Firefox 3.0 no Linux) usam\n
. Todos eles podem lidar\n
muito bem ao definir o valor, embora o IE e o Opera os convertam\r\n
novamente em internamente. Há um artigo do SitePoint com mais alguns detalhes chamados Finalizações de linha em Javascript .Observe também que isso é independente das terminações de linha reais no próprio arquivo HTML (ambos
\n
e\r\n
fornecem os mesmos resultados).Ao enviar um formulário, todos os navegadores podem canonizar novas linhas
%0D%0A
na codificação de URL. Para ver isso, carregue, por exemplo,data:text/html,<form><textarea name="foo">foo%0abar</textarea><input type="submit"></form>
e pressione o botão enviar. (Alguns navegadores bloqueiam o carregamento da página enviada, mas você pode ver os valores do formulário codificado por URL no console.)Eu não acho que você realmente precise fazer muita determinação, no entanto. Se você quiser apenas dividir o texto em novas linhas, faça algo assim:
fonte
\r\n
como duas novas linhas em vez de uma. Se você quer um resumo,/\r?\n/g
provavelmente o fará (quem ainda usa o Mac OS 9?).Sim, é universal.
Embora
'\n'
sejam os caracteres universais da nova linha , lembre-se de que, dependendo da sua entrada, os novos caracteres de linha podem ser precedidos por caracteres de retorno de carro ('\r'
).fonte
Não use "\ n". Apenas tente o seguinte:
Basta digitar uma barra invertida e continuar andando! Funciona como um encanto.
fonte
tilde
caractere (também chamado de backtick).~
Tilde vs`
Backtick .Pode ser mais fácil manipular todos os casos do caractere de nova linha em vez de verificar qual caso e aplicá-lo. Por exemplo, se você precisar substituir a nova linha, faça o seguinte:
fonte
sim use \ n, a menos que você esteja gerando código html, no qual deseja usar
<br />
fonte
Função de link de e-mail, eu uso "% 0D% 0A"
[HTML]
fonte
Obtenha um separador de linhas para o navegador atual:
fonte
return textarea.value;
?JSON.stringify
no resultado mudará o personagem? Se eu tentar ver o resultado de umaalert()
chamada não me mostrar o caráter a menos que eu stringify pela primeira vez (não que as necessidades de char para ser legível para ser eficaz, é claro)Uma observação - ao usar o ExtendScript JavaScript (a linguagem de script da Adobe usada em aplicativos como o Photoshop CS3 +), o caractere a ser usado é "\ r". "\ n" será interpretado como um caractere de fonte e, portanto, muitas fontes terão um caractere de bloco.
Por exemplo (para selecionar uma camada chamada 'Nota' e adicionar feeds de linha após todos os períodos):
fonte
\n
e<br/>
não estava trabalhando no meu script do Photoshop ... Obrigado!Você pode usar `` aspas (que estão abaixo do botão Esc) com o ES6. Então você pode escrever algo como isto:
fonte
Eu acredito que sim - quando você estiver trabalhando com strings JS.
Se você estiver gerando HTML, precisará usar
<br />
tags (não\n
, pois não está mais lidando com JS)fonte
Eu tive o problema de expressar nova linha com \ n ou \ r \ n .
Magicamente o personagem \ r que é usado para retorno de carro funcionou para mim como uma nova linha.
Assim, em alguns casos, é útil considerar também.
fonte
Impressões:
fonte
Uma observação prática ... No meu script NodeJS, tenho a seguinte função:
Primeiro eu tinha apenas "\ n", mas notei que quando abro o arquivo de log no Bloco de Notas, ele mostra todas as entradas na mesma linha. O Notepad ++, por outro lado, mostra as entradas cada uma em sua própria linha. Após alterar o código para "\ r \ n", até o Bloco de Notas mostra todas as entradas em sua própria linha.
fonte
O
\n
é apenas multa para todos os casos que eu encontrei. Se você estiver trabalhando com a Web, use\n
e não se preocupe com isso (a menos que tenha tido problemas relacionados à nova linha).fonte
você pode usar
<br/>
e odocument.write/
,document.writeln
um.fonte
<br>