JavaScript'te decodeURIComponent() ve decodeURI() yöntemleri arasındaki fark nedir?

Javascript Te Decodeuricomponent Ve Decodeuri Yontemleri Arasindaki Fark Nedir



JavaScript' decodeURIComponent() ' ve ' kod çözmeURI() ” yöntemleri URI (Tekdüzen Kaynak Tanımlayıcı) üzerinde çalışır. “decodeURIComponent()” yöntemi bileşenlerinin kodunu çözerken, “decodeURI()” kodunu tamamen çözer. Dolayısıyla tanımları her ikisi arasındaki farkı açıkça ortaya koymaktadır ancak aynı zamanda diğer bazı faktörler temelinde de birbirlerinden farklıdırlar.

Bu kılavuz, decodeURIComponent() ve decodeURI() yöntemleri arasındaki farkı listeler.

Öncelikle konunun temellerine bakın decodeURIComponent() ve kod çözmeURI'si yöntemler







farklılıklarına geçmeden önce.



JavaScript'te “decodeURIComponent()” ve “decodeURI()” Yöntemleri Arasındaki Fark Nedir?

Bu bölüm “decodeURIComponent()” ve “decodeURI()” yöntemleri arasındaki önemli farkları içermektedir:



Şartlar decodeURIComponent() kod çözmeURI()
Kullanım “decodeURIComponent()”, “encodeURIComponent()” yöntemi tarafından kodlanan URI bileşenlerinin kodunu çözmek için kullanılır. “decodeURI()”, “encodeURI” yönteminin yardımıyla kodlanan tam URI'nin kodunu çözmek için kullanılır.
Parametreler 'decodeURIComponent()', kod çözme için zorunlu parametre olarak 'encodeURIComponent()' yöntemi tarafından 'kodlanmış' bir URI gerektirir. 'decodeURI()', bir kod çözme işlemini gerçekleştirmek için temel parametre olarak 'encodeURI()' yöntemi aracılığıyla 'kodlanmış' bir URI'ye ihtiyaç duyar.
Sınırlama “decodeURIComponent()” yalnızca URI'nin “; / ? : @ & = + $ , #” ayırıcıları. Bu karakterleri özel karakterler olarak değil, metin olarak ele alır. “decodeURIComponent()” URI'nin tamamını çözer.

Şimdi belirtilen farklılıkları uygulamalı olarak görün.





Fark 1: “Kullanım”a Göre “decodeURIComponent()” ve “decodeURI()” Yöntemlerini Uygulamak

Birinci farka göre, “decodeURIComponent()” yöntemi, kodlanmış dizeyi “encodeURIComponent()” yöntemiyle çözerken, “decodeURI()”, kodlanmış dizeyi “encodedURI()” yöntemiyle çözer.

JavaScript Kodu

< senaryo >

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

var kodlanmış_URI = encodeURIBileşeni ( tip ) ;

konsol. kayıt ( 'Çıktı(decodeURIComponent()):' + decodeURIBileşeni ( tip ) )

var encoded_uri = kodlamaURI ( tip ) ;

konsol. kayıt ( 'Kodu çözülmüş URI:' + kod çözmeURI'si ( kodlanmış_uri ) ) ;

senaryo >

Yukarıdaki kod parçacığında:



  • “Uri” değişkeni bir URI'yi (Tekdüzen Kaynak Tanımlayıcısı) başlatır.
  • “encoded_URI” değişkeni “ encodeURIComponent() Geçirilen “uri”yi parametre olarak kodlamak için ” yöntemi.
  • Daha sonra “console.log()” yöntemi “ decodeURIComponent() ” yöntemi, yakın zamanda kodlanan dizenin kodunu çözer ve ardından onu konsolda görüntüler.
  • Bundan sonra “ kod çözmeURI() ” yöntemi, kodlanmış URI'nin kodunu “ aracılığıyla çözer kodlamaURI() “encoded_uri” değişkeninde belirtilen yöntem.

Çıktı

Konsolun “decodeURIComponent()” ve “decodeURI()” yöntemlerini kullanarak kodu çözülmüş URI’leri gösterdiği görülüyor.

Fark 2: “Parametrelere” Dayalı “decodeURIComponent()” ve “decodeURI()” Yöntemlerini Uygulamak

“Fark 1”de “decodeURIComponent()”ın kodlanmış URI’yi “encodeURIComponent()” yöntemiyle kabul ettiği ve “decodeURI()”ın kodlanmış URI üzerinde “encodeURI()” yöntemiyle çalıştığı açıkça görülebilmektedir. bir parametre.

Fark 3: “Kodu Çözülmüş Karakterlere” Dayalı “decodeURIComponent()” ve “decodeURI()” Yöntemlerini Uygulamak

“decodeURIComponent()” ve “decodeURI()” yöntemleri arasındaki üçüncü fark, belirli URI'nin kodunun çözülmesiyle analiz edilebilir. Uygulamalı olarak görelim.

JavaScript Kodu

< senaryo >

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

konsol. kayıt ( 'Çıktı(decodeURIComponent()): ' + decodeURIBileşeni ( tip ) )

konsol. kayıt ( 'Çıktı(decodeURI()): ' + kod çözmeURI'si ( tip ) )

senaryo >

Verilen komut dosyası bölümünde:

  • İlk ' console.log() ” yöntemi, “ kullanarak kodu çözülmüş URI'yi görüntüler decodeURIComponent() ' yöntem.
  • İkinci “console.log()” yöntemi, kodu çözülmüş URI'yi “ yardımıyla gösterir. kod çözmeURI() ' yöntem.

Çıktı

Konsol, 'decodeURIComponent()' yönteminin URI'nin tamamını değil, yalnızca '@ & =' karakterleri arasında bulunan URI bileşeninin kodunu çözdüğünü açıkça göstermektedir.

Çözüm

JavaScript' decodeURIComponent() ' ve ' kod çözmeURI() 'yöntemleri' bağlı olarak birbirinden farklılık gösterir. kullanım ”, “ parametreler ', ve ' sınırlama ' faktörler. Aralarındaki temel/önemli fark, 'decodeURIComponent()' yönteminin URI bileşeninin kodunu çözmesi, 'decodeURI()' yönteminin ise tüm URI kodunu çözmesidir. Bu kılavuz, decodeURIComponent() ve decodeURI() yöntemleri arasındaki temel farkları pratik olarak açıkladı.