为什么我的重复删除脚本没有捕获唯一值
Why is my duplicate removal script not capturing unique values
>我正在尝试从排序列表中删除重复项。
这个剧本是我写的。
for(var i = 0; i < duplicateAuthors.length - 1; i++){
if(duplicateAuthors[i] == duplicateAuthors[i + 1]) { continue; }
else{
uniqAuthors.push(duplicateAuthors[i]);
}
}
它有效,但它不捕获列表中的唯一值。我做错了什么?
var uniqAuthors = [];
for(var i = 0; i < duplicateAuthors.length; i++){
if(uniqAuthors.indexOf(duplicateAuthors[i]) == -1) {
uniqAuthors.push(duplicateAuthors[i]);
}
}
上面的代码检查对象是否存在于数组中,如果没有,则将其添加到数组中。因此,最后我们将有一个唯一值数组。
由于对象键必须是唯一的,我意识到您也可以执行以下操作来隔离唯一值。
var uniqs = {};
for(var i = 0; i < duplicateAuthors.length ; i++){
uniqs[duplicateAuthors[i]] = null;
}
var uniqAuthors = Object.keys(uniqs);
这将利用它已经排序的事实。
var previous;
var current;
for(var i = 0; i < duplicateAuthors.length; i++){
current = duplicateAuthors[i];
if (current && current != previous) {
uniqAuthors.push(current);
previous = current;
}
}
相关文章:
- 当包含另一个asp文件时,是否也包含所有引用的样式和脚本页面
- 借助asp.net验证或java脚本对多个文本进行验证
- chrome扩展:尽管运行了at:documentidle,js脚本还是过早启动
- Java脚本时间添加
- 不显示带有本地json文件数据的谷歌地图脚本
- JQuery添加元素需要在我的js之前再次添加JQuery脚本
- 从远程脚本获取用户IP
- 如何在 Google 应用脚本中 sendEmail 函数的范围内的唯一非空白列中返回值
- Java 脚本为每个映像创建唯一的类
- 如何停止 PHP 脚本的响应消息显示为页面的唯一内容
- Google 应用脚本:返回 2 个两个范围之间唯一值的函数
- Spotfire Java脚本将字段拆分为唯一值,并每30秒更新一次MapChart可视化,以反映值的变化
- 使用document.write是跨浏览器跨域同步加载脚本的唯一可能方式
- 将唯一ID传递给AJAX脚本
- jQuery UI选项卡示例-打开新选项卡=为每个选项卡添加唯一的脚本
- 有没有一种方法可以为我的Chrome扩展唯一标识内容脚本运行的iframe
- 分配,在主索引页上为脚本使用唯一的Wordpress帖子id
- 将脚本应用于具有唯一id的多个视频标签's
- Jquery翻转脚本的背面没有显示唯一的内容
- 为什么我的重复删除脚本没有捕获唯一值