CoffeeScript 类似 Python 的 zip 函数


本文整理自网络,侵删。

类似 Python 的 zip 函数

问题

你想把多个数组连在一起,生成一个数组的数组。换句话说,你需要实现与Python中的zip函数类似的功能。Python的zip函数返回的是元组的数组,其中每个元组中包含着作为参数的数组中的第i个元素。

解决方案

使用下面的CoffeeScript代码:

# Usage: zip(arr1, arr2, arr3, ...)
zip = () ->
  lengthArray = (arr.length for arr in arguments)
  length = Math.max.apply(Math, lengthArray)
  argumentLength = arguments.length
  results = []
  for i in [0...length]
    semiResult = []
    for arr in arguments
      semiResult.push arr[i]
    results.push semiResult
  return results

zip([0, 1, 2, 3], [0, -1, -2, -3])
# => [[0, 0], [1, -1], [2, -2], [3, -3]]

标签:CoffeeScript

相关阅读 >>

CoffeeScript 大写单词首字母

CoffeeScript 生成随机数

CoffeeScript 替换子字符串

CoffeeScript 不使用 jquery 的 ajax 请求

CoffeeScript 服务端和客户端的代码重用

CoffeeScript 数学常数

CoffeeScript 转换弧度和度

CoffeeScript 检测与构建丢失的函数

CoffeeScript 桥接模式

CoffeeScript 递归函数

更多相关阅读请进入《CoffeeScript》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...