如何从一个数组中取出另一个数组并将其赋值给另一个数组?

4

我有一个二维数组。

我正在尝试使用JavaScript编写以下伪代码:

Take the length of array of arrays

take out each array from array and assign it to new array 

以下是不正确的示例。

    for (var i = 0 ; i < $scope.Permissions.length; i++) 
        var arr + [i] = $scope.Permissions[i];

有需要帮忙的吗?

你是想将各个数组连接成一个“长”数组吗? - Amit
1
你不能像那样动态创建变量。但是你可以动态地为对象分配属性(例如作用域对象,就像下面的一个答案中所描述的那样)。 - Danny Blue
2个回答

1
你也可以使用数组的内置forEach方法: $scope.Permissions.forEach(function (arr, i) { $scope['arr' + i] = arr });

0
在您的情况下,创建一堆新数组作为$scope对象的属性是有意义的:
for (var i = 0 ; i < $scope.Permissions.length; i++) {
    $scope['arr' + i] = $scope.Permissions[i];
}

console.log($scope.arr0, $scope.arr1);

我在控制台中得到了这个错误:无法读取未定义的属性'0'。 - TheKingPinMirza
$scope.Permissions 是什么?检查 console.log($scope.Permissions) - dfsq
@ dfsq。我的错误,按照您的建议它可以正常工作。谢谢。 - TheKingPinMirza

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接