我有两个 JS 数组,如下所示:
$order = [];
$a = ['about','about','portfolio','contact'];
获取物品的顺序:
for($i=0;$i<$a.length;$i++){
$order.push($i+1);
}
console.log($order);
输出:[1,2,3,4]
但我想过滤掉重复项并得到像 [1,3,4] 这样的顺序
另一个例子
$a = array('about','about','about','portfolio','contact','contact');
我想得到像 [1,4,5] 这样的订单
我不确定我是否解释清楚。谁能给我一个建议?
可以使用 aSet
来存储唯一值并Array#map()
返回基于Array#indexOf()
const arr = ['about', 'about', 'about', 'portfolio', 'contact', 'contact']
const res = [...new Set(arr)].map(v => arr.indexOf(v) + 1)
console.log(res)
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句