数组中变量名的列表



我有一个包含一组数组的数组,我想访问数组内部的变量名,如;

var mainArr = [
arr1 = ["1","2","3"],
arr2 = ["4","5","6"],
arr3 = ["7","8","9"],
];

我想打印arr1,arr2,arr3。

注意,我使用的是Javascript Ecma 5

您所问的实际上是一个JavaScript对象。

const obj = {
arr1: ['1','2','3'],
arr2: ['4','5','6'],
arr3: ['7','8','9']
}

您可以访问此对象的"属性",如obj['arr1']

要获取属性名称,可以使用:CCD_ 2。它将返回一个密钥数组(['arr1', 'arr2', 'arr3'](。

您需要将mainArr中的每个数组存储为类似{arr1: ["1","2","3"]}的对象。

然后你可以循环通过mainArr并打印每个元素的键值,比如。

mainArr = [
{arr1: ["1","2","3"]},
{arr2: ["4","5","6"]},
{arr3: ["7","8","9"]},
];
mainArr.forEach(arr => console.log(Object.keys(arr)))

这将打印mainArr中的所有数组。

您实际上是在用错误的方式处理它。最好的方法是不使用array.push((方法推送数组。相反,可以使用命名索引数组来执行此操作,因为默认情况下,数组的索引为数字,即0,1,2,3,。。

var myArray = [];
myArray["arr1"] = ["1","2","3"];
myArray["arr2"] = ["4","5","6"];
myArray["arr3"] = ["7","8","9"];
console.log(myArr); => 
[arr1: Array(3), arr2: Array(3), arr3: Array(3)]
arr1: (3) ["1", "2", "3"]
arr2: (3) ["4", "5", "6"]
arr3: (3) ["7", "8", "9"]    
console.log(Object.keys(myArray)); => ["arr1","arr2","arr3"]

最新更新