如何检查数组是否是Javascript中的空数组数组

Ayu*_*pta 1 javascript arrays multidimensional-array node.js

在我的node.js 6.10应用程序中,我试图在我的数组中识别如下:

[
    [
        []
    ],
    []
]
Run Code Online (Sandbox Code Playgroud)

这种嵌套可以进入n级,并且可以在任何级别的数组中包含元素.我怎样才能做到这一点?谢谢

PS我知道我可以使用一个级别for循环,但想知道一个更优化的解决方案.

geo*_*org 9

单行:

let isEmpty = a => Array.isArray(a) && a.every(isEmpty);

//

let zz = [
    [
        []
    ],
    [],
    [[[[[[]]]]]]
]


console.log(isEmpty(zz))
Run Code Online (Sandbox Code Playgroud)

如果你想知道它是如何工作的,请记住任何关于空集的陈述都是真的(" 真空真相"),因此a.every(isEmpty)对于空数组和仅包含空数组的数组都是如此.