Мене приємно вражає наявність дещо інформованої дезінформації на такому високо розглянутому питанні про основну тему.
Рядки JSON не можна котирувати окремими цитатами . У різних версіях специфікації ( оригінал Дугласа Крокфорда, версія ECMA та версія IETF ) все зазначено, що рядки повинні бути котировані подвійними лапками. Це не теоретичне питання, ані питання думки, як це пропонує прийнята відповідь; будь-який синтаксичний аналізатор JSON у реальному світі помилиться, якщо ви спробуєте його проаналізувати одноцитованим рядком.
У версії Крокфорда та ECMA навіть відображається визначення рядка, використовуючи гарне зображення, яке повинно зробити точку однозначно зрозумілою:

Гарна картинка також перелічує всі законні послідовності втечі в рядку JSON:
\"
\\
\/
\b
\f
\n
\r
\t
\u далі чотиришарові цифри
Зауважте, що, на відміну від дурниць у деяких інших відповідях тут, \'ніколи не є дійсною послідовністю відходу в рядку JSON. Це не обов'язково, тому що рядки JSON завжди подвійні.
Нарешті, вам не слід думати про те, щоб уникнути символів самостійно при програмному генеруванні JSON (хоча, звичайно, ви будете під час редагування вручну, скажімо, конфігураційного файлу на основі JSON). Натомість сформуйте структуру даних, яку ви хочете кодувати, використовуючи будь-які рідні типи карти, масиву, рядка, числа, булеві та нульові типи, а потім кодуйте її до JSON за допомогою функції кодування JSON. Така функція, ймовірно, вбудована в будь-яку мову, якою ви користуєтесь, як-от JavaScript JSON.stringify, PHP json_encodeчи Pythonjson.dumps. Якщо ви використовуєте мову, в якій не вбудована така функціональність, ви, ймовірно, можете знайти бібліотеку JSON для розбору та кодування для використання. Якщо ви просто використовуєте функції мови або бібліотеки для перетворення речей в JSON і з них, вам ніколи навіть не знатиметься правил втечі JSON. Ось що тут мав би зробити помилковий запитувач.