Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimanakah Saya Boleh Melaksanakan Fungsi Zip Python dalam JavaScript?

Bagaimanakah Saya Boleh Melaksanakan Fungsi Zip Python dalam JavaScript?

Patricia Arquette
Patricia Arquetteasal
2024-12-27 05:57:12455semak imbas

How Can I Implement Python's Zip Function in JavaScript?

JavaScript Setara dengan Fungsi Zip Python

Fungsi zip Python menggabungkan berbilang iterable ke dalam satu senarai tupel. Setiap tuple mengandungi elemen yang sepadan daripada input iterables.

Dalam JavaScript, tiada fungsi yang setara terbina dalam bahasa. Walau bagaimanapun, anda boleh mencipta fungsi tersuai untuk mencapai fungsi yang sama. Berikut ialah beberapa pilihan:

1. Kaedah Array.map():

function zip(arrays) {
  return arrays[0].map((_, i) => {
    return arrays.map(array => array[i]);
  });
}

Fungsi ini menggunakan kaedah peta untuk mengulangi elemen tatasusunan pertama. Untuk setiap elemen, ia mencipta tatasusunan baharu dengan memetakan tatasusunan input dan mendapatkan semula elemen yang sepadan pada indeks yang sama.

2. Operator Spread ES6:

const zip = (...rows) =>
  rows[0].map((_, c) => rows.map(row => row[c]));

Fungsi ini menggunakan operator spread untuk mencipta tatasusunan baris individu. Ia kemudian menggunakan kaedah peta untuk mengulangi baris pertama dan memetakan baris ke elemen sepadannya pada indeks yang sama.

3. Senarai Argumen Variadic:

function zip() {
  const args = [].slice.call(arguments);
  const shortest = args.length
    ? args.reduce((a, b) => (a.length < b.length ? a : b))
    : [];

  return shortest.map((_, i) => {
    return args.map(array => array[i]);
  });
}

Fungsi ini mengambil nombor pembolehubah argumen sebagai input. Ia mengenal pasti tatasusunan terpendek dan mengulangi elemennya, memetakan tatasusunan input kepada elemen sepadannya pada indeks yang sama.

Fungsi ini memberikan tahap kelenturan yang berbeza dan boleh digunakan bergantung pada keperluan khusus projek anda.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Melaksanakan Fungsi Zip Python dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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