HiF*_*Ojt 4 javascript arrays jquery
我有一个重复三次的数组['2530491','2530491','2530491','2530492'],2530491我想从其中的 3 个数组中删除单个值 2530491,因此输出将类似于 :
['2530491','2530491','2530492']。
fileArrayAnnounce_size = jQuery.grep(fileArrayAnnounce_size, function(value){
return value != file_size.metas[0].size;
});
Run Code Online (Sandbox Code Playgroud)
我尝试抓握,但它消除了所有相同的价值。我只想从重复项中删除单个值。
您可以使用splice和indexOf来删除第一个实例:
fileArrayAnnounce_size.splice(fileArrayAnnounce_size.indexOf('2530491'), 1)
Run Code Online (Sandbox Code Playgroud)
更安全的方法:
var index = fileArrayAnnounce_size.indexOf('2530491')
if (index > -1) {
fileArrayAnnounce_size.splice(index, 1);
}
Run Code Online (Sandbox Code Playgroud)
检查并删除重复项:
var mapOfValues = fileArrayAnnounce_size.reduce(function(vals, current) {
if (vals[current]) {
vals[current]++;
} else {
vals[current] = 1;
}
return vals;
}, {});
Run Code Online (Sandbox Code Playgroud)
现在检查并删除任何值超过 1 的内容:
for (var value in mapOfValues) {
if (mapOfValues[value] > 1) {
var idx = fileArrayAnnounce_size.indexOf(value);
fileArrayAnnounce_size.splice(idx, 1);
}
}
Run Code Online (Sandbox Code Playgroud)
演示: https: //jsfiddle.net/1277mxt9/
| 归档时间: |
|
| 查看次数: |
3461 次 |
| 最近记录: |