JavaScript позволяет использовать либо одинарные (''), либо двойные кавычки ("") для создания строковых литералов.

Оба обладают одинаковыми качествами

Они по сути одинаковы.

console.log('abc' === "abc"); // true

Строка с одинарными кавычками может содержать двойные кавычки без необходимости их экранирования.

console.log('Single quotes with a double ( " ) quote in the middle.');

Строка с двойными кавычками может иметь одинарные кавычки, не экранируя их.

console.log("Double quotes with a single ( ' ) quote in the middle.");

Каждый тип должен экранировать свой собственный тип.

console.log('single quotes ( \' ) must escape a single quote');
console.log("double quotes ( \" ) must escape a double quote");

Плюсы использования одинарных кавычек

Одним из популярных аргументов в пользу одинарных кавычек является необходимость писать html в JavaScript.

Если вы используете одинарные кавычки, вы можете написать следующее.

const html = '<div id="some_div"></div>';

Если вы используете двойные кавычки, вы должны избегать каждого вложенного "

const html = "<div id=\"some_div\"></div>";

что может раздражать, или вы можете использовать одинарные кавычки в строке html.

Плюсы использования двойных кавычек

Помните, что JSON допускает только двойные кавычки.

{
  "in_json": "You use only double quotes."
}

Одиночные кавычки встречаются чаще

Несколько репозиториев популярных проектов JavaScript показывают, что одинарные кавычки предпочтительнее двойных.

+------------+----------------------------------+
| Projects   | Dominant of Single Quotes        |
+------------+----------------------------------+
| async      | Single-Quotes ('') 76% of quotes |
| express    | Single-Quotes ('') 92% of quotes |
| lodash     | Single-Quotes ('') 73% of quotes |
| request    | Single-Quotes ('') 97% of quotes |
| underscore | Single-Quotes ('') 78% of quotes |
| angular    | Single-Quotes ('') 58% of quotes |
| react      | Single-Quotes ('') 52% of quotes |
+------------+----------------------------------+

Вы можете видеть, что внешние библиотеки (React, Angualar) имеют больше двойных кавычек, чем другие библиотеки, что может быть связано с наличием фрагментов HTML.

Давайте взглянем на несколько руководств по стилю, примерно половина которых рекомендует одинарные кавычки, а другая половина — двойные кавычки.

Резюме

Вы должны определить один стандартный стиль и придерживаться его. Я рекомендую одинарные кавычки ('') как надежный и более распространенный стандарт.

В ES6 есть еще один вариант создания строковых литералов с помощью Шаблонных литералов.

использованная литература

Спасибо за прочтение ❤

Скажи привет! Твиттер | Гитхаб | ЛинкедИн | Фейсбук | Инстаграм