我正在尝试获取数组数组的索引,但我不断在警报中得出 -1 的结果。谁能告诉我我在这里做错了什么?
我已经尝试使用 nextcubetypearray 将 nextcubetype 作为数组,结果相同。
<head>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
</head>
<body>
<div class="cube Dirt1"></div>
<div class="cube Dirt2"></div>
<div class="cube Dirt3"></div>
<script>
var Dirt1 = new Object();
Dirt1.Name = 'Dirt1';
Dirt1.Level = '1';
var Dirt2 = new Object();
Dirt2.Name = 'Dirt2';
Dirt2.Level = '1';
var Dirt3 = new Object();
Dirt3.Name = 'Dirt3';
Dirt3.Level = '2';
var terrain = new Array(Dirt1, Dirt2, Dirt3);
$(".cube").each(function(index) {
var thiscubetype = $(this).attr('class').split(' ')[1];
var nextcubetype = $(this).next().attr('class').split(' ')[1];
var nextcubetypearray = new Array(nextcubetype);
var nextcubeindex = terrain.indexOf(nextcubetype);
alert(nextcubeindex);
});
</script>
</body>
我需要包含下一个cubetype的地形数组的索引
最佳答案
您正在对象数组中查找索引,但使用对象属性作为标准。
尝试获取名称数组,然后查找索引,如本例所示:
var nextcubeindex = terrain.map(n => n.Name).indexOf(nextcubetype);
关于javascript - 如何获取数组数组的索引?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56465760/