Каква е разликата между методите decodeURIComponent() и decodeURI() в JavaScript?

Kakva E Razlikata Mezdu Metodite Decodeuricomponent I Decodeuri V Javascript



JavaScript“ decodeURIComponent() “ и „ decodeURI() ” методите работят върху URI (Uniform Resource Identifier). Методът “decodeURIComponent()” декодира неговите компоненти, докато “decodeURI()” го декодира напълно. Следователно техните определения ясно идентифицират разликата между тях, но те също се различават един от друг въз основа на някои други фактори.

Това ръководство описва разликата между методите decodeURIComponent() и decodeURI().

Първо, разгледайте основите на decodeURIComponent() и на decodeURI методи







преди да преминете към техните различия.



Каква е разликата между методите „decodeURIComponent()“ и „decodeURI()“ в JavaScript?

Този раздел съдържа значителните разлики между методите „decodeURIComponent()“ и „decodeURI()“:



Условия decodeURIComponent() decodeURI()
Използване „decodeURIComponent()“ се използва за декодиране на компонентите на URI, кодирани чрез метода „encodeURIComponent()“. „decodeURI()“ се използва за декодиране на пълния URI, кодиран с помощта на метода „encodeURI“.
Параметри „decodeURIComponent()“ изисква „кодиран“ URI от метода „encodeURIComponent()“ като задължителен параметър за декодиране. „decodeURI()“ се нуждае от „кодиран“ URI чрез метода „encodeURI()“ като основен параметър за извършване на операция по декодиране.
Ограничение „decodeURIComponent()“ декодира само частта от URI, която се намира между „; / ? : @ & = + $ , #” разделители. Той третира тези символи като текст, а не като специални символи. „decodeURIComponent()“ декодира пълния URI.

Сега вижте на практика посочените разлики.





Разлика 1: Прилагане на методи „decodeURIComponent()“ и „decodeURI()“ въз основа на „Използване“

Според първата разлика методът „decodeURIComponent()“ декодира кодирания низ чрез метода „encodeURIComponent()“, а „decodeURI()“ декодира кодирания низ чрез метода „encodedURI()“.

JavaScript код

< сценарий >

var uri = '%3B%2C%41%3F%3A%41%26%3D'

var encoded_URI = encodeURIComponent ( Тип ) ;

конзола. дневник ( 'Изход (decodeURIComponent()):' + decodeURIComponent ( Тип ) )

var encoded_uri = encodeURI ( Тип ) ;

конзола. дневник ( „Декодиран URI адрес:“ + decodeURI ( кодиран_uri ) ) ;

сценарий >

В горния кодов фрагмент:



  • Променливата 'uri' инициализира URI (Uniform Resource Identifier).
  • Променливата „encoded_URI“ прилага „ encodeURIComponent() ” за кодиране на подадения „uri” като негов параметър.
  • След това методът „console.log()“ използва „ decodeURIComponent() ”, за да декодирате наскоро кодирания низ и след това да го покажете в конзолата.
  • След това „ decodeURI() ” декодира кодирания URI чрез „ кодиранеURI() ” метод, посочен в променливата „encoded_uri”.

Изход

Вижда се, че конзолата показва декодираните URI с помощта на методите „decodeURIComponent()“ и „decodeURI()“

Разлика 2: Прилагане на методи „decodeURIComponent()“ и „decodeURI()“, базирани на „Параметри“

Може ясно да се види в „Разлика 1“, че „decodeURIComponent()“ приема кодирания URI чрез метода „encodeURIComponent()“, а „decodeURI()“ работи върху кодирания URI чрез метода „encodeURI()“ като параметър.

Разлика 3: Прилагане на методи „decodeURIComponent()“ и „decodeURI()“, базирани на „декодирани знаци“

Третата разлика между методите „decodeURIComponent()“ и „decodeURI()“ може да бъде анализирана чрез декодиране на конкретния URI. Нека го видим практически.

JavaScript код

< сценарий >

var uri = '@%20&%7F=%3A%41%26%3D'

конзола. дневник ( 'Изход (decodeURIComponent()): ' + decodeURIComponent ( Тип ) )

конзола. дневник ( 'Изход (decodeURI()): ' + decodeURI ( Тип ) )

сценарий >

В дадения раздел на скрипта:

  • Първият ' console.log() ” показва декодиран URI с помощта на „ decodeURIComponent() ” метод.
  • Вторият метод „console.log()“ показва декодирания URI с помощта на „ decodeURI() ” метод.

Изход

Конзолата ясно показва, че методът “decodeURIComponent()” декодира само URI компонента, разположен между знаците “@ & =”, а не пълния URI.

Заключение

JavaScript“ decodeURIComponent() “ и „ decodeURI() ” методите се различават един от друг в зависимост от „ използване ”, “ параметри “, и „ ограничение ” фактори. Основната/съществена разлика помежду си е, че „decodeURIComponent()“ декодира URI компонента, докато методът „decodeURI()“ декодира пълния URI. Това ръководство на практика обяснява основните разлики между методите decodeURIComponent() и decodeURI().