Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/472.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何迭代对象中的重复键_Javascript_Object_Iteration - Fatal编程技术网

Javascript 如何迭代对象中的重复键

Javascript 如何迭代对象中的重复键,javascript,object,iteration,Javascript,Object,Iteration,当我在控制台中键入此命令时: var a = {"baz":null, "baz":null, "baz":null, "taz":null}; for (var x in a) { console.log(x); } 我只得到: “巴兹” “塔兹” 我需要捕获键“baz”的所有实例。。。有没有办法做到这一点?因为……in只会做上面的事 我需要捕获键“baz”的所有实例。。。有没有办法做到这一点 不,没有。结果对象不会以任何方式包含有关重复关键点的信息 根据您的用例,您可以使用数组而不

当我在控制台中键入此命令时:

var a = {"baz":null, "baz":null, "baz":null, "taz":null};

for (var x in a) {
   console.log(x);
}
我只得到: “巴兹” “塔兹”

我需要捕获键“baz”的所有实例。。。有没有办法做到这一点?因为……in只会做上面的事

我需要捕获键“baz”的所有实例。。。有没有办法做到这一点

不,没有。结果对象不会以任何方式包含有关重复关键点的信息

根据您的用例,您可以使用数组而不是对象,或者使用数组作为属性值(并相应地处理它):


您可以通过将数组作为键的值来执行此操作:

{baz: ["homer","bart","liza"], foo:[1,2,3] }
然后显示:

for (var x in a) {

  for (var i=0; i < a.length; i++){
  console.log(a[i]);
   } 

}
for(a中的变量x){
对于(变量i=0;i
正如费利克斯指出的,你不能有重复的钥匙。 构造数据的另一种方法可能是DICT数组

(我假设您试图使用问题中的每个键“null”存储数据。我用“other_value”键表示这一点)

var a=[{name:“baz”,other_值:null},{name:“baz”,other_值:null},{name:“taz”,other_值:null}];

对于(var i=0;iYou不能复制键,它们必须是唯一的。不能有两个相同的键。这会否定键的意义。这是怎么回事?!每次在
a
对象中声明它时,你都在重新定义
baz
。为什么这个问题会被否决?
for (var x in a) {

  for (var i=0; i < a.length; i++){
  console.log(a[i]);
   } 

}
var a = [{name : "baz", other_value : null}, {name : "baz", other_value : null}, {name : "taz", other_value : null}];

for(var i=0; i<a.length; i++){
    console.log(a[i].name);
}