Uncaught SyntaxError: Кавычки ломают title с БД
У меня с БД приходят значение айтемов для таблицы. В 'title' могут приходить названия внутри которых могут быть разные кавычки: ' " `
Использовать ' - невозможно по причине несовместимости с IE11. ' и " - все равно ломают несколько важных документов.
Как лучше добавить title в объект, что бы не было :" Uncaught SyntaxError: Unexpected identifier " и все тайтлы были валидными?
replace не очень помог, так как он воспринимает как строку только первую часть текста до кавычки...
Ответы (1 шт):
Сделайте конкатенацию строк, сейчас у вас просто прерывается строка и вылетает эксепшн:
title: 'строка' + "с" + 'конкатенацией'
Либо надо делать экранирование символов, то есть если у вас встречается символ ' или " до последнего закрывающего символа, то экранируйте его:
title: 'строка\' \"с \" \"экранированием\'\"'
Ещё вы можете написать свой парсер для JSON.parse, читайте про reviver, там вы можете например задать обработчик (который принимает key, value), проверять ключ, если title, то делать кастомную обработку, иначе просто верните value.

