Rumah > pembangunan bahagian belakang > Tutorial Python > Adakah terdapat JavaScript yang Setara dengan Fungsi zip Python?

Adakah terdapat JavaScript yang Setara dengan Fungsi zip Python?

Mary-Kate Olsen
Lepaskan: 2024-12-13 19:43:14
asal
270 orang telah melayarinya

Is There a JavaScript Equivalent to Python's zip Function?

Javascript Equivalent of Python's Zip Function

Dalam Python, fungsi zip menggabungkan berbilang leterable menjadi satu leterable tuple, di mana setiap tuple mengandungi elemen yang sepadan daripada iterable input. Adakah terdapat fungsi serupa dalam Javascript?

Pelaksanaan Javascript

Ya, terdapat fungsi zip yang setara dalam Javascript. Ia mengambil tatasusunan tatasusunan sebagai hujahnya dan mengembalikan tatasusunan tatasusunan, di mana setiap tatasusunan dalam mengandungi unsur-unsur yang sepadan daripada tatasusunan input. Contohnya, jika anda mempunyai tiga tatasusunan:

const array1 = [1, 2, 3];
const array2 = ['a', 'b', 'c'];
const array3 = [4, 5, 6];
Salin selepas log masuk

Kod berikut akan mencipta tatasusunan pasangan:

const outputArray = array1.map((_, i) => [array1[i], array2[i], array3[i]]);
Salin selepas log masuk

Susun atur output ialah:

[[1, 'a', 4], [2, 'b', 5], [3, 'c', 6]]
Salin selepas log masuk

Versi ES6

Dalam ES6, anda boleh menggunakan yang berikut sintaks:

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

Ciri Tambahan

Fungsi zip Javascript boleh diubah suai untuk meniru gelagat fungsi zip Python dan sambungannya. Sebagai contoh, anda boleh mencipta fungsi yang:

  • Anggap tatasusunan yang tidak sama panjang dan senyap-senyap mengabaikan tatasusunan yang lebih panjang.
  • Sisipkan nilai yang tidak ditentukan untuk unsur yang tiada dalam tatasusunan.
  • Mengendalikan iterable, seperti rentetan dan julat.

Tambahan: Mengendalikan Iterables

Untuk mengendalikan iterables, anda boleh mentakrifkan fungsi iterView yang menukar iterable kepada array yang setara. Sebagai alternatif, anda boleh menggunakan fungsi berikut:

const zip = arrays => Array.apply(null, Array(arrays[0].length)).map((_, i) => arrays.map(array => array[i]));
Salin selepas log masuk

Atas ialah kandungan terperinci Adakah terdapat JavaScript yang Setara dengan Fungsi zip Python?. 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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan