Javascript 如何获取数组内部的数组名称?
我试图访问循环中其他数组内部的数组名称,但失败了。我可以通过fx访问该数组的名称,如果它不在另一个数组中。key({thisObject})[0]但是当它位于另一个数组中时,它就不起作用了 我已经尝试了每个循环,每个循环。在新阵列中嵌套初始化的阵列:Javascript 如何获取数组内部的数组名称?,javascript,jquery,arrays,loops,multidimensional-array,Javascript,Jquery,Arrays,Loops,Multidimensional Array,我试图访问循环中其他数组内部的数组名称,但失败了。我可以通过fx访问该数组的名称,如果它不在另一个数组中。key({thisObject})[0]但是当它位于另一个数组中时,它就不起作用了 我已经尝试了每个循环,每个循环。在新阵列中嵌套初始化的阵列: var arr1 = [1,2,3] var arr2 = [4,5,6] var arr3 = new Array(arr1,arr2) 但是,在循环中,我无法获得arr1和arr2的名称。我可以访问它们的值,但不能访问它们的名称 var ca
var arr1 = [1,2,3]
var arr2 = [4,5,6]
var arr3 = new Array(arr1,arr2)
但是,在循环中,我无法获得arr1和arr2的名称。我可以访问它们的值,但不能访问它们的名称
var cars = new Array("Porshe","Mercedes");
var bikes = new Array("Yamaha","Mitsubishi");
var vehicles = new Array(cars, bikes);
for (var key in vehicles) {
var value = vehicles[key];// This is retruning whole array, not the name
console.log(Object.keys({vehicles[key]})[0]) // That does not work
vehicles[key].forEach(car => {
console.log(car)
});
}
//or
for (let i=0;i<vehicles.length;i++){
console.log(vehicles[i]); //This is also returning whole array - same method.
for(let j = 0; j< vehicles[i].car.length;j++){
console.log(vehicles[i][j]);
}
}
var cars=新阵列(“保时捷”、“梅赛德斯”);
var bikes=新阵列(“雅马哈”、“三菱”);
var车辆=新阵列(汽车、自行车);
用于(车辆中的var键){
var value=vehicles[key];//这是重新运行整个数组,而不是名称
console.log(Object.keys({vehicles[key]})[0])//不起作用
车辆[钥匙].forEach(车辆=>{
控制台日志(汽车)
});
}
//或
对于(让i=0;ifor)(让i=0;i这将不起作用),另一个数组中的数组不是属性,因此没有propertyName。您要做的是创建如下对象:
arr1 = [value1, value2];
arr2 = [value1, value2];
obj = { 'a1': arr1, 'a2': arr2}
然后可以迭代对象键,因为现在它是一个对象:
Object.keys(obj).forEach(key => console.log(key + ' = '+ obj[key]);
您可以如下方式检索它们:
for(let arrayName of map.keys()) {
console.log(arrayName);
for(let item of map.get(arrayName)) {
console.log(item);
}
}
输出:
cars
Porshe
Mercedes
bikes
Yamaha
Mitsubishi
给你
var vehicles={cars: ["Porshe","Mercedes"], bikes: ["Yamaha","Mitsubishi"]};
for( var vehicle in vehicles){ console.log(vehicle)} // this returns the keys in object i.e. "cars" and "bikes" not the values of array
for( var mark in vehicle){ console.log(mark) // this will loop on "bikes" and "cars"
要获得价值,您需要执行以下操作
for(var type in vehicles) { // will give type of vehicle i.e. "cars" and "bikes"
vehicles[type].forEach(vehicle => { // will get values for each type and loop over them
console.log(vehicle); // this will print the values for every car and bike
)};
}
您正在数组中存储数组。它们没有任何名称,对象属性有名称而不是数组。如果需要名称,请执行类似于var vehicles={cars:[“porse”,“Mercedes”]、bikes:[“Yamaha”,“Mitsubishi”]}
好的,现在我只是想得到数组名,但是当我尝试循环数组中的元素时,它会在数组名中给我一些字母,比如:var vehicles={cars:[“porse”,“Mercedes”,“bikes:[“Yamaha”,“Mitsubishi”]}for(车辆中的var vehicle){console.log(vehicle)//这对我来说现在很好(var mark in vehicle){console.log(mark)//这是返回数组名称的长度,如porse}}
您可以这样做。vehicles[“cars”].forEach(item=>console.log(item))
您可以将变量放置在“cars”的位置。我已经发布了答案。
var vehicles={cars: ["Porshe","Mercedes"], bikes: ["Yamaha","Mitsubishi"]};
for( var vehicle in vehicles){ console.log(vehicle)} // this returns the keys in object i.e. "cars" and "bikes" not the values of array
for( var mark in vehicle){ console.log(mark) // this will loop on "bikes" and "cars"
for(var type in vehicles) { // will give type of vehicle i.e. "cars" and "bikes"
vehicles[type].forEach(vehicle => { // will get values for each type and loop over them
console.log(vehicle); // this will print the values for every car and bike
)};
}