В javascript, в чем разница между '\' и '\ n'? - PullRequest
3 голосов
/ 23 декабря 2010

Я полагаю, что и \, и \ n можно использовать как разрыв строки. В чем разница?

РЕДАКТИРОВАТЬ: Извините, я понял, что я был не прав . В учебнике говорилось о / как разрыв строки для программиста, который не отображался, то есть:

alert("Hi \
there");

Ответы [ 3 ]

6 голосов
/ 23 декабря 2010

Косая черта в конце строки внутри строки позволяет записать оставшуюся часть строки в следующую строку.Результирующая строка на самом деле не будет содержать разрыв строки в этой точке.Он используется исключительно для того, чтобы сделать исходный код более читабельным.

var foo = "This string \
has only \
one line.";

// Result:
// This string has only one line.

"\ n" фактически вставляет перенос строки.

2 голосов
/ 23 декабря 2010

\n - единственный правильный escape-код для новой строки (если не использовать такие вещи, как \u000a или аналогичные).

Обратите внимание, что приведенный ниже код на самом деле не вставляет разрывы строк (все равно нужен фактический \n escape-код):

var foo = 'qwertyuiopasdfghjkl\
qwertyuiopasdfghjkl\
qwertyuiopasdfghjkl';

Результат - 'qwertyuiopasdfghjklqwertyuiopasdfghjklqwertyuiopasdfghjkl'. Я также не рекомендую приведенный выше код, потому что отступ строки продолжения вызывает проблемы с нежелательными пробелами в вашей строке. Однако есть одна хорошая альтернатива:

var foo = [
    'qwertyuiopasdfghjkl',
    'qwertyuiopasdfghjkl',
    'qwertyuiopasdfghjkl'
].join('\n');
1 голос
/ 23 декабря 2010

\n - это способ написания новой строки (разрыв строки).Таким образом, "Hello World!\nHow are you?" будет выводить так:

// Hello World!
// How are you?

вместо этого:

// Hello World!How are you?

Вы можете использовать "\" перед другими буквами тоже ... как \tкоторая является вкладкой.или \\, который делает обратную косую черту.Но просто ввод \ в строку ничего не даст.

...