Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/420.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 使用d3.js通过键访问嵌套元素_Javascript_D3.js - Fatal编程技术网

Javascript 使用d3.js通过键访问嵌套元素

Javascript 使用d3.js通过键访问嵌套元素,javascript,d3.js,Javascript,D3.js,因此,我有以下巢穴: var myNest = [ {"key":"1","values":[...]}, {"key":"2","values":[...]}, {"key":"3","values":[...]}, ] 如何使用这些元素的键访问它们 我知道我可以通过他们的索引访问他们 myNext[0] //return elements with key=="1" myNest[1] //return elements with key=="2" 但我想做的是: myNes

因此,我有以下巢穴:

var myNest = [
  {"key":"1","values":[...]},
  {"key":"2","values":[...]},
  {"key":"3","values":[...]},
]
如何使用这些元素的键访问它们

我知道我可以通过他们的索引访问他们

myNext[0] //return elements with key=="1"
myNest[1] //return elements with key=="2"
但我想做的是:

myNest["1"] //return elements with key=="1"
myNest["2"] //return elements with key=="2"
感谢您在筑巢时使用
map()
而不是
entries()
。你可能做了类似的事情:

var产品=[{
“id”:1,
“姓名”:“猫帽”,
“价格”:49
}, {
“id”:2,
“名称”:“独角兽靴”,
“价格”:139
}, {
“id”:3,
“名称”:“粉色羊毛衫”,
“价格”:34
}];
var productsById=d3.nest()
.键(功能(p){
返回p.id;
})
.参赛作品(产品);
console.log(productsById)
在筑巢时使用
map()
而不是
entries()
。你可能做了类似的事情:

var产品=[{
“id”:1,
“姓名”:“猫帽”,
“价格”:49
}, {
“id”:2,
“名称”:“独角兽靴”,
“价格”:139
}, {
“id”:3,
“名称”:“粉色羊毛衫”,
“价格”:34
}];
var productsById=d3.nest()
.键(功能(p){
返回p.id;
})
.参赛作品(产品);
console.log(productsById)

您可以为我们创建一个哈希表,其中对象的键是对象本身的键

对于ES6,我建议使用地图:

var myNest=[{key:“1”,值:[1,4]},{key:“2”,值:[2,5]},{key:“3”,值:[3,6]},
hash=Object.create(null);
myNest.forEach(函数(a){
散列[a.key]=a;
});

log(散列['2'])您可以为我们创建一个哈希表,其中对象的键是对象本身的键

对于ES6,我建议使用地图:

var myNest=[{key:“1”,值:[1,4]},{key:“2”,值:[2,5]},{key:“3”,值:[3,6]},
hash=Object.create(null);
myNest.forEach(函数(a){
散列[a.key]=a;
});
log(散列['2'])