将任何(等长)行数组转换为列数组的最优雅的方法是什么?
Eg:
[1,2,3]
[4,5,6]
# To
[1,4]
[2,5]
[3,6]
这是我到目前为止所拥有的:
grid = [
[1,2,3]
[4,5,6]
]
grid2 = []
for i in grid[0]
grid2.push []
for row, y in grid
for el, x in row
grid2[x].push el
是否有 1-liner 可以做到这一点?
在 Javascript 中,如果您在使用 ECMAScript 5 数组方法的环境中工作,map()
函数对此效果很好:
var grid2 = grid[0].map(function(col, i) {
return grid.map(function(row) {
return row[i];
});
});
如果你去掉了换行符,这可能是一句单行话。 :)
咖啡脚本:
grid[0].map (col, i) -> grid.map (row) -> row[i]
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)