【发布时间】:2020-11-10 22:25:35
【问题描述】:
我想用不同的值替换重复的项目。
例如arr = [1,1,1,1,2,2,2,3] 我想用R 替换重复项
所以结果看起来像这样arr = [1,R,R,R,2,R,R,3]
现在我正在使用这种方法:
arr = [1,1,1,1,2,2,2,3]
let previous = 0;
let current = 1;
while (current < arr.length) {
if (arr[previous] === arr[current]) {
arr[current] = 'R';
current += 1;
} else if (arr[previous] !== arr[current]) {
previous = current;
current += 1;
}
}
我想知道是否有不同的方法可以实现这一目标。例如使用 Lodash (uniqwith, uniq)。
谢谢
【问题讨论】:
-
保留你遇到的所有东西的集合或地图,当发现重复时,替换它。
-
你想只替换直接邻域中的相同值吗?
标签: javascript arrays loops replace lodash