json jquery ..获取重复值

时间:2014-01-22 22:13:39

标签: jquery json

// for example
var arrayName = [1, 2, 2, 3, 4, 2];
alert ( arrayName[2].length ); // undefined

我想要的是

alert ( arrayName[2].length ); // 3

或任何其他方式..谢谢

4 个答案:

答案 0 :(得分:2)

要计算数组中2的数量

var instances = arrayName.filter(function(e) {
    return e===2;
}).length;

FIDDLE

答案 1 :(得分:0)

你不需要长度。只需引用该索引处的值:

alert(arrayName[2]);

答案 2 :(得分:0)

只需将其添加到数组原型中,您就可以从数组中返回一个唯一的子集:

Array.prototype.getUnique = function(){
   var u = {}, a = [];
   for(var i = 0, l = this.length; i < l; ++i){
      if(u.hasOwnProperty(this[i])) {
         continue;
      }
      a.push(this[i]);
      u[this[i]] = 1;
   }
   return a;
}

这是Unique values in an array

的副本

答案 3 :(得分:0)

显然,您正在将数组索引的概念与该数组的实际元素混合。

简而言之,arrayName [2] .length返回第二个元素的长度。 在这种情况下,第二个元素是2,其长度未定义。

虽然实现目标的好方法是使用库underscore

arr = [1,2,2,2,3];

function countDuplicate(arr, dup) {
  return (_.filter(arr, function(num){ 
    return num == dup; 
  })).length;
}

console.log(countDuplicate(arr, 2));

小提琴可用here