Подтвердить что ты не робот

В чем разница между "и" в JavaScript?

Я видел этот вопрос, и мне интересно об этом же в JavaScript.

Если вы используете символ "или символ" при создании строк в JavaScript, приложение, похоже, ведет себя одинаково. В чем разница между этими двумя символами?

Единственное преимущество, которое я видел при использовании 'для построения строк, - это то, что я могу делать такие вещи, как:

var toAppend = '<div id="myDiv1"></div>';

Вместо:

var toAppend = "<div id=\"myDiv1\"></div>";

Есть ли существенная разница между ними, о которой я должен знать?

4b9b3361

Ответ 1

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

Ответ 2

Хотя технически не разница в Javascript, стоит отметить, что одиночные кавычки недействительны JSON, как таковой. Я думаю, что люди автоматически предполагают, что, поскольку JSON является допустимым JS, допустимые строки JS также действительны JSON, что не обязательно верно.

Например, {'key': 'Some "value"'} недействителен JSON, тогда как {"key": "Some 'value'"} есть.

Ответ 3

Нет никакой разницы. Причина его существования - именно то, о чем вы упоминали

Ответ 4

Хорошая практика, согласно Mozilla, заключается в том, чтобы использовать "в HTML (где" нельзя использовать ", сохраняя" в Javascript "(где" и "и" можно использовать безразлично)...

Ответ 5

Я думаю, что есть другая разница. Если вы выполните следующие действия

var str1 = 'The \' character';
var str2 = 'The " character';
var str3 = "The ' character";
var str4 = "The \" character";
document.write (str1.replace("'","%26");
document.write (str2.replace('"',"%22");
document.write (str3.replace("'","%26");
document.write (str4.replace('"',"%22");

Ошибка document.write для str1 и str4. В этом разница, но я не знаю, есть ли способ обхода, чтобы заставить их работать.

Ответ 6

Попробуй это:

console.log("mama+"mama"")

Output : Uncaught SyntaxError: missing ) 
after argument list

Теперь попробуйте:

console.log('mama+"mama"')

Output :  mama+"mama"

Ответ 7

Как написано выше, нет никакой разницы, но для ситуации вам нужно использовать "/" внутри строки.

Я думаю, что лучшей практикой для ситуации, когда вам нужно объединять строки с переменными, является использование строки шаблона: Price: ${price}, Amount: ${amount}. Total: ${price*amount} Price: ${price}, Amount: ${amount}. Total: ${price*amount}

Таким образом, вы можете добавлять "и" и объединять переменные.

Намного легче читать, намного легче писать.

Ответ 8

Ваш пример - лучший пример, чтобы описать разницу между ними....

Ответ 9

ПРЕДУПРЕЖДЕНИЕ!!!!

Есть разница. При добавлении в массивы, вы должны использовать один или другой. Массив запутывается, когда вы используете два разных типа кавычек.

Пример:

//WILL NOT WORK
var array = ["apple","orange","banana"];

array.push('pear');

//WILL WORK
var array = ["apple","orange","banana"];

array.push("pear");