首頁 >後端開發 >Python教學 >如何在 JavaScript 中實作 Python 的 Zip 函數?

如何在 JavaScript 中實作 Python 的 Zip 函數?

Patricia Arquette
Patricia Arquette原創
2024-12-27 05:57:12460瀏覽

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

Python Zip 函數的 JavaScript 等效項

Python 的 zip 函數將多個可迭代物件組合到單一元組列表中。每個元組都包含來自損失迭代的相應元素。

在 JavaScript 中,沒有內建於語言中的等效函數。但是,您可以建立自訂函數來實現相同的功能。這裡有幾個選項:

1。 Array.map() 方法:

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

此函數使用map方法迭代第一個陣列的元素。對於每個元素,它透過映射輸入陣列並檢索同一索引處的相應元素來建立一個新陣列。

2. ES6 擴充運算子:

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

此函數使用擴充運算子建立單一行的陣列。然後,它使用 map 方法迭代第一行,並將這些行對應到同一索引處的對應元素。

3.可變參數清單:

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]);
  });
}

此函數以可變數量的參數作為輸入。它識別最短數組並迭代其元素,將輸入數組映射到同一索引處的相應元素。

這些函數提供不同程度的彈性,可以根據專案的具體要求使用。

以上是如何在 JavaScript 中實作 Python 的 Zip 函數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn