循环遍历数组并仅获取一次相同的值
Looping through array and get the same value only once
我有一个数组
var myArray = ['1','1','2','2','1','3'] // 6 item
循环时有什么方法可以一次性返回 1 和 2 和 3 的值?
//example in pseudocode
var getNumber = [];
var count = 0;
var check = 0;
for(var i in myArray)
{
if(getNumber[check] !== myArray[i])
{
getNumber[count] = myArray[i];
count++;
}
else
{
}
}
以及跟进我以前的代码的建议?
谢谢
您应该使用 Array.indexOf 和 Array.push 来检查和插入值。
var getNumber = [];
for(var i in myArray)
{
if(getNumber.indexOf(myArray[i]) < 0) //See if the number wasn't found already
{
getNumber.push(myArray[i]);
}
else
{
//This number was found before. Do nothing!
}
}
你可以做这样的事情:
function leaveDupes(arry){
var newArry = [], keys={};
for(var i in arry){
if(!keys[arry[i]]){
newArry.push(arry[i]);
keys[arry[i]]=true;
}
}
return newArry;
}
console.log(leaveDupes(['1','1','2','2','1','3'] ))
使用下划线.js,您可以执行以下操作:
newArry = _.uniq(['1','1','2','2','1','3']);
var obj = {};
for (var i = 0; i < myArray.length; i++) {
if (!obj[myArray[i]]) {
obj[myArray[i]] = true;
console.log(myArray[i]); //these are the unique values
}
}
这将起作用。
var myArray = ['1','1','2','2','1','3']
var getNumber = {};
var retArray = [];
myArray.forEach(function(val){
if(!getNumber[val]){
getNumber[val] = val;
retArray.push(val);
}
});
return retArray
您可以使用
forEach
和indexOf
数组方法来查找唯一元素。
var myArray = ['1','1','2','2','1','3','4','4','5'];
var uniqueArray =[]; //A new array which will hold unique values
function _unique(myArray){
myArray.forEach(function(item,index){
if(uniqueArray.indexOf(item) ==-1){ //Check if new array contains item
uniqueArray.push(item)
}
})
}
_unique(myArray);
相关文章:
- 第一个字第一个字符第二个字第二个字符,一直到数组结束
- jQuery对象从html表中查询为两个一维数组,用于Chartist图表
- 如何在Java Script中比较二维数组和一维数组,并将常见数据存储在另一个数组中
- 如何在javascript中使用2个一维数组创建层次结构树
- PHP json_encode不适用于一维数组
- 如何在一维数组中存储 3 个随机数,然后在 Javascript 中收到警报
- 将字符串的一维数组转换为二维数组
- Javascript使用map从一维数组创建一个二维数组
- PHP 循环通过多维到一维数组
- 使用JavaScript将对象的多维数组转换为一维数组
- 用一维数组过滤多维数组
- mongoose.js:我如何从引用的子数组中删除一个属性,同时使用填充和使用其中一个子数组字段作为过滤器
- 使用Angulajs在嵌套数组中动态添加一个子数组
- 在JS中根据需要的组大小将一维数组转换为多维数组的更好方法
- 我的Javascript for循环工作在除了一个子数组以外的所有子数组上
- 如何在JavaScript中将2个一维数组连接成1个二维数组
- 如何将深度多维数组转换为一维数组-Javascript
- 使用JavaScript将一维数组转换为二维数组
- D3.js:通过 d3 加载平面一维数组.csv导致“类型错误:组数据未定义”/使用 D3.js 加载多个 CSV 文件
- 如何使用一维数组形成 JSON 数组