Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   encodeURIComponent VS escape (https://javascript.ru/forum/misc/23910-encodeuricomponent-vs-escape.html)

z700i 11.12.2011 16:48

encodeURIComponent VS escape
 
В чём разница между:
encodeURIComponent() - decodeURIComponent()
и
escape() - unescape()

ksa 11.12.2011 17:12

Такая же как и у delete и undelete...

encodeURIComponent Кодирует компонент URI.
decodeURIComponent Декодирует компонент URI.

escape Преобразует строку в шестнадцатеричную кодировку Unicode.
unescape Преобразует шестнадцатеричную кодировку Unicode в строку.

http://www.fpublisher.ru/documentati..._doc/js08.docs

monolithed 11.12.2011 18:02

Цитата:

Сообщение от z700i
encodeURIComponent()

для работы с кодированием URL нужно использовать только en/decodeURIComponent() или en/decodeURI(), во всех остальных случаях нужно смотреть по ситуации, т.к. результаты кодирования, у этих функций разный.

z700i 11.12.2011 19:29

большое спасибо

GuardCat 12.12.2011 13:10

Просмотрел ответ monolithed, он уже ответил на заданный мной вопрос, прошу прощения за невнимательность.


Товарищи, в тему: a encodeURI от encodeURIComponent чем отличаются?

Особенно любопытно, учитывая их совместимость:
alert ( decodeURIComponent( encodeURI( "абвгд" ) ) )

Livanderiaamarum 12.12.2011 13:50

Цитата:

Сообщение от GuardCat (Сообщение 142193)
Просмотрел ответ monolithed, он уже ответил на заданный мной вопрос, прошу прощения за невнимательность.


Товарищи, в тему: a encodeURI от encodeURIComponent чем отличаются?

Особенно любопытно, учитывая их совместимость:
alert ( decodeURIComponent( encodeURI( "абвгд" ) ) )

я кстати тоже не понимаю))) совсем не разбираюсь в кодировках и методах и.т.п. почему не сделать специальную кодировку для общения сервера с клиентом)? в которой были ы спеециальные символы аналоги

[] {} : & ? % ????
почему программист должен заниматься этим на высоких уровнях???

ksa 12.12.2011 13:57

Цитата:

Сообщение от Livanderiaamarum
почему программист должен заниматься этим на высоких уровнях?

Потому как только он знает надо это делать или нет... :D

Livanderiaamarum 12.12.2011 14:37

Цитата:

Сообщение от ksa (Сообщение 142199)
Потому как только он знает надо это делать или нет... :D

а зачем вообще что-то кодировать? есть кодировка которая поддерживает все. utf8 зачем в мире существуют другие кодировки вообще?

и зачем вообще что-то кодировать во что-то передавая на сервер? расскажи вкратце?

ksa 12.12.2011 15:11

Цитата:

Сообщение от Livanderiaamarum
зачем в мире существуют другие кодировки вообще?

На кол их! Фигли они в сам-то деле... :D

Цитата:

Сообщение от Livanderiaamarum
и зачем вообще что-то кодировать во что-то передавая на сервер?

Потому как хоть как-то унифицировать передачу. Избежать того могообразия кодировок и спец символов...

Livanderiaamarum 12.12.2011 15:41

Цитата:

Сообщение от ksa (Сообщение 142215)
На кол их! Фигли они в сам-то деле... :D


Потому как хоть как-то унифицировать передачу. Избежать того могообразия кодировок и спец символов...

то есть это по сути и есть функция которая кодирует всякие тысяч и кодировок в одну универсальную?)))
тогда почему таких кодировок несколько а не одна)?

иными словами ТОЛЬКО ОДНА из этих функций для кодирования для передачи на сервер)? так?

другая (которая че-то там в 16 ричную систему че-то там делает) то по сути вообще другое ?)) не для серверов)? а то я путаюсь.

B@rmaley.e><e 12.12.2011 15:55

Цитата:

Сообщение от GuardCat
Товарищи, в тему: a encodeURI от encodeURIComponent чем отличаются?

var u = 'http://блог.президент.рф/post/193';
alert([ encodeURI(u), encodeURIComponent(u) ].join('\n\n'));

dmitriymar 12.12.2011 15:55

Цитата:

Сообщение от Livanderiaamarum
Товарищи, в тему: a encodeURI от encodeURIComponent чем отличаются?

в гугле забанили? http://javascript.ru/encodeURI
1 js пофик с какой кодировкой работать поскольку кодировка ему "навязывается" сервером,тегом <meta> задающим кодировку
2 не стоит путать изменение кодировки и замену символов

Один дурак может задать столько вопросов ,что сотня мудрецов не сможет ответить на них ©Ленин

B@rmaley.e><e 12.12.2011 15:57

Цитата:

Сообщение от dmitriymar
s пофик с какой кодировкой работать поскольку кодировка ему "навязывается" сервером,тегом <meta> задающим кодировку

В JS одна кодировка — utf8, он других не знает.

ksa 12.12.2011 15:58

В своей работе я использую методы своего серверного языка... Т.ч. про JSовские точно не скажу...
Но и наши две пары (туда и обратно). :) Одна для УРЛов, а вторая я для "контента"...

Мне как-то хватает того, что я прочитал в доке, какую пару для чего использовать. А весь "тайный смысл" мне как-то не очень-то и нужен.
Достаточно знать:
- кодировку страницы
- кодировку данных БД
- кодировку программ

Т.о. правильно кодируя/декодируя получаешь нужные "эфекты" и результаты...

dmitriymar 12.12.2011 16:12

Цитата:

Сообщение от B@rmaley.e><e
В JS одна кодировка — utf8, он других не знает.

да щаз,если я наберу код в кодировке 1251 и укажу что страницав ней -он работать не будет?:)
чегото я сегодня злой))

B@rmaley.e><e 12.12.2011 16:16

Цитата:

Сообщение от dmitriymar
да щаз,если я наберу код в кодировке 1251 и укажу что страницав ней -он работать не будет?

Браузер любезно конвертирует его в utf8 перед подачей на вход интерпретатору JS.

dmitriymar 12.12.2011 16:18

B@rmaley.e><e,
я чуть не о том,я о том что у документа в браузере может быть одна кодировка,у серверного сценария другая,у б.д вобще третья и каждый будет работать с полученными данными в своей кодировке если её не перевести
как ksa, до этого сказал/перевёл то что я сказал на русский))


Часовой пояс GMT +3, время: 09:43.