javascript - JavaScript 中的数组理解?

标签 javascript python list list-comprehension

<分区>

我想知道将列表理解(从 Python)转换为 Javascript 的最巧妙方法是什么。有什么东西可以使它可读而不是一团糟吗?

    non_zero_in_square = [ grid[row][col]
                           for row in range(start_row, start_row+3)
                           for col in range(start_col, start_col+3)
                           if grid[row][col] is not 0
                         ]

这是列表理解的一个很好的例子,因为它有多个 for 和一个 if

我应该补充一点,range 位包含在 here 中(我不能没有 range)。

最佳答案

好吧,如果使用 .map() 方法执行此操作会有些困惑,因为外部调用确实需要返回数组。因此,您可能最适合行人:

var nonZero = [];
for (var row = startRow; row < startRow + 3; ++row)
  for (var col = startCol; col < startCol + 3; ++col)
    if (grid[row][col] !== 0) nonZero.push(grid[row][col];

关于javascript - JavaScript 中的数组理解?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11479418/

相关文章:

javascript - 使用 jQuery 在 <select> 中循环

javascript - 如何让 draft.js 识别转义键?

python - 当我尝试为所有 python 库构建标记文件时,ctags 永远不会停止

javascript - 操作列中的所有字符串

javascript - iframe中内容提交后需要跳出iframe

python - Matplotlib 方形箱线图

python - 无法使用带有 Windows 身份验证的 pymssql 进行连接

list - 在 Haskell 中,[0.1..1] 返回 [0.1,1.1]。为什么?

python - 将参数列表传递给 Python 函数

c# - 如何在C#中复制列表框中的选定项?