Этот ответ предоставляет методы jQuery и обычный JS, но это самый короткий путь без использования DOM:
unescape(escape("It's > 20% less complicated this way."))
Экранированная строка: It%27s%20%3E%2020%25%20less%20complicated%20this%20way.
Если сбежавшие места вас беспокоят, попробуйте:
unescape(escape("It's > 20% less complicated this way.").replace(/%20/g, " "))
Экранированная строка: It%27s %3E 20%25 less complicated this way.
К сожалению, функция escape()
устарела в в JavaScript версии 1.5 . encodeURI()
или encodeURIComponent()
являются альтернативами, но они игнорируют '
, поэтому последняя строка кода будет выглядеть так:
decodeURI(encodeURI("It's > 20% less complicated this way.").replace(/%20/g, " ").replace("'", '%27'))
Все основные браузеры по-прежнему поддерживают короткий код, и, учитывая количество старых сайтов, я сомневаюсь, что это скоро изменится.