var app = angular.module("app", []);
app.controller("MyCtrl1", MyCtrl1);
function MyCtrl1($scope) {
$scope.block = new Array();
$scope.block[0] = new Array();
$scope.block[0].push("111");
$scope.block[0].push("112");
$scope.block[0].push("113");
$scope.block[0].push("114");
$scope.block[0].push("115");
$scope.block[2].length = 0;
$scope.block[3] = new Array();
$scope.block[3].push("111");
$scope.block[3].push("112");
$scope.block[3].push("113");
$scope.block[3].push("114");
$scope.block[3].push("115");
$scope.block.filter(Boolean);
console.log($scope.block.length.toString());
}
[[ “111”, “112”, “113”, “114”, “115”],[ “111”, “112”, “113”, “114”, “115”], [] 下,[ “111”, “112”, “113”, “114”, “115”]]
如何删除空数组 谢谢帮助〜
答案 0 :(得分:3)
Array#filter
不会修改它所调用的数组。它返回一个新数组。
此外,Boolean([])
为true
,因此无法在此处使用。
这样做:
$scope.block = $scope.block.filter(function (arr) {
return arr.length;
});
答案 1 :(得分:1)
如果我理解你的问题,这应该可以解决问题:
$scope.block.splice(2,1)
第一个参数指定"块"的索引。阵列。第二个参数指定从该索引开始删除的项目数。