Эти символы должны быть экранированы, потому что так указано в спецификации JSON.Для некоторых символов причины просты - например, двойные кавычки необходимо экранировать, потому что обычные двойные кавычки заканчивают значение String, поэтому невозможно было бы определить маркер конца для символа в содержимом.По причине перевода строки, вероятно, требовалось ввести ограничение, что никакое значение String не будет охватывать несколько строк текста;и для другого управляющего символа, чтобы избежать «невидимых символов».Это похоже на экранирование, требуемое XML или CSV;все текстовые форматы данных требуют экранирования или запрещают использование определенных символов.