Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/5.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_Arrays_Multidimensional Array - Fatal编程技术网

Javascript生成动态多维数组

Javascript生成动态多维数组,javascript,arrays,multidimensional-array,Javascript,Arrays,Multidimensional Array,有没有人能帮助我,或者给我一些javascript代码的示例/例子,就像我解释的那样 我有这样的数组 var obj = [ {rgb : 'val1', x : '10', y : '15'}, {rgb : 'val1', x : '20', y : '25'}, {rgb : 'val1', x : '30', y : '35'} ]; 我想要这样的阵列 var obj = { 'val1

有没有人能帮助我,或者给我一些javascript代码的示例/例子,就像我解释的那样

我有这样的数组

    var obj = [ 
        {rgb : 'val1', x : '10', y : '15'}, 
        {rgb : 'val1', x : '20', y : '25'},  
        {rgb : 'val1', x : '30', y : '35'} 
    ];
我想要这样的阵列

    var obj = { 
        'val1' : [ {x : '10', y : '15'}, {x : '20', y : '25'},  {x : '30', y : '35'} ] 
    };

要获得“映射”类型的结构,您需要执行以下操作:

var obj = {
   'val1': [{x : '10'},{y : '10'}]
} 
大概是这样的:

var newObj={};
for(var i=0, l = obj.length; i<l; i++){
  if (typeof newObj[obj[i].rgb] === 'undefined')
    newObj[obj[i].rgb] = []; 
  newObj[obj[i].rgb].push({ x: obj[i].x, y: obj[i].y })
}
obj = newObj;
var newObj={};

对于(var i=0,l=obj.length;i您想要的结果无效-val1是否应该是一个数组?我想使用val1作为主数组的键。您的初始对象也是无效的…这不是一个数组。看起来您根本不懂javascript。首先学习基础知识不是最好的吗?试试Google lean javascript基础知识在再次询问这些基本问题之前,给它20分钟时间。也许这有帮助:我没有得到这个答案?除非我误解了这个问题,否则他不是在尝试用JavaScript创建一个映射吗?OP正在尝试将当前的对象数组转换成不同的格式-我不知道这个答案有什么帮助?