Rumah > hujung hadapan web > tutorial js > Bagaimana untuk Mengekodkan Objek JavaScript dengan Cekap ke dalam Rentetan Permintaan GET?

Bagaimana untuk Mengekodkan Objek JavaScript dengan Cekap ke dalam Rentetan Permintaan GET?

DDD
Lepaskan: 2024-12-11 01:13:14
asal
824 orang telah melayarinya

How to Efficiently Encode JavaScript Objects into GET Request Strings?

Pengekodan Rentetan Objek JavaScript yang Cekap dalam Permintaan GET

Dalam bidang pembangunan JavaScript, selalunya perlu untuk menghantar data sebagai pertanyaan rentetan melalui permintaan GET. Satu tugas penting dalam proses ini ialah pengekodan objek JavaScript ke dalam rentetan tersebut. Bagaimanakah kita boleh mencapai ini dengan cekap tanpa menggunakan rangka kerja luaran atau jQuery?

Coretan kod yang disediakan menawarkan penyelesaian yang mudah dan pantas:

serialize = function(obj) {
  var str = [];
  for (var p in obj)
    if (obj.hasOwnProperty(p)) {
      str.push(encodeURIComponent(p) + "=" + encodeURIComponent(obj[p]));
    }
  return str.join("&");
};

console.log(serialize({
  foo: "hi there",
  bar: "100%"
}));
Salin selepas log masuk

Apabila melaksanakan fungsi ini dengan objek contoh yang disediakan, ia menghasilkan rentetan yang dikodkan berikut:

foo=hi%20there&bar=100%25
Salin selepas log masuk

Mengarang rentetan yang dikodkan ini memerlukan lelaran melalui setiap sifat objek yang diberikan. Untuk setiap harta, kami mengekod kedua-dua nama dan nilainya menggunakan fungsi encodeURIComponent. Pasangan nilai nama ini kemudiannya dicantumkan dengan pemisah ampersand (&). Kaedah ini secara berkesan menukar objek JavaScript kepada rentetan pertanyaan yang boleh ditambah dengan mudah pada URL permintaan GET.

Pendekatan ini menyediakan penyelesaian ringkas dan kendiri untuk pengekodan objek JavaScript ke dalam rentetan pertanyaan tanpa kebergantungan luaran. Ia sesuai untuk senario apabila kesederhanaan dan kecekapan diutamakan.

Atas ialah kandungan terperinci Bagaimana untuk Mengekodkan Objek JavaScript dengan Cekap ke dalam Rentetan Permintaan GET?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan