SyntaxError: неожиданный незаконный токен, вызванный u2028 и u2029

#php #javascript

#php #javascript

Вопрос:

Я отправляю sting в качестве параметра функции JavaScript:

 theJSFunction('say hi dude');
  

Chrome выдает мне SyntaxError: Unexpected token ILLEGAL so после исследования я обнаружил, что следующие пробелы генерируют ошибку u2028 и u2029 .

Проблема в том, что строка, отправленная в функцию, печатается через PHP, и мне нужно, чтобы она печаталась через PHP (можно использовать ajax, но я должен позволить PHP распечатать ее).

Есть ли какой-либо способ удалить эти символы с помощью PHP или JavaScript?

Ответ №1:

Вы можете заменить на .replace . Передача регулярных выражений с g флагом заменяет все вхождения, и вы также можете включать uxxxx символы:

 "u2028u2029".replace(/u2028|u2029/g, "").length; // 0
  

Комментарии:

1. Исправлено , str_replace("n",'',$string); str_replace("r",'',$string);