我有一个数组 -
[[Rice, 125.0, 5000.0, Sat Dec 30 01:23:24 GMT-06:36 1899], [, , , ], [, , , ], [, , , ], [, , , ], [, , , ], [, , , ], [, , , ]]
我需要从数组末尾删除空数组,我该怎么做?
答案 0 :(得分:1)
稍微更优雅的方式是通过布尔
进行过滤inputArr.filter(function(a) {
return a.filter(Boolean).length > 0;
});
答案 1 :(得分:0)
你可以做join
关于""
的内部数组,这样如果该数组中有任何值,那么它将不会产生""
。因此,您可以比较此条件并在res
变量中创建一个新数组:
var inputArray = [['Rice', 125.0, 5000.0, 'Sat Dec 30 01:23:24 GMT-06:36 1899'], [ , , ], [ , , ], [ , , ], [ , , ]];
var res = inputArray.filter(
innerArray => innerArray.join("") !== ""
);
console.log(res);

答案 2 :(得分:0)
您可以检查现有项目并调整数组的长度,以便从末尾删除稀疏数组。
var array = [['some data', 42], [0, , , ], [, , , ], [, , , ], [, , , ], [, , , ], [, , , ], [, , , ]],
i = array.length;
while (i--) {
if (array[i].some(function () { return true; })) {
break;
}
array.length = i;
}
console.log(array);
答案 3 :(得分:0)
这是解决方案! 享受!
<!doctype html>
<html>
<body>
<p id="remove">This will be removed!</p>
<script src="script.js"></script>
</body>