var arr=[ '每周一','每周二','每周四' ] 转换为 [0,1,3]
时间: 2023-10-11 12:09:37 浏览: 75
js代码-数组拍平:将多维数组转化为一维
你可以使用对象的属性名来存储每个元素在原数组中的索引值,然后再遍历原数组,根据元素查找对应的索引值,从而得到一个新的数组。具体代码如下:
```
var arr = ['每周一', '每周二', '每周四'];
var obj = {};
for (var i = 0; i < arr.length; i++) {
obj[arr[i]] = i;
}
var newArr = [];
for (var i = 0; i < arr.length; i++) {
newArr.push(obj[arr[i]]);
}
```
这样,newArr就被转换成了[0, 1, 3]。在上述代码中,首先使用for循环遍历原数组,将每个元素作为对象的属性名,将每个元素在原数组中的索引值作为属性值,存储到obj对象中。然后再使用for循环遍历原数组,根据元素查找对应的索引值,从而得到新的数组。由于对象的属性名是唯一的,因此可以很方便地根据元素查找对应的索引值。
阅读全文