Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.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';输入();_Javascript_D3.js - Fatal编程技术网

Javascript 将对象属性传递给D3';输入();

Javascript 将对象属性传递给D3';输入();,javascript,d3.js,Javascript,D3.js,我有一个具有许多属性的对象,我正试图通过将特定属性传递给下面的barChart函数来创建一个条形图。但是当它到达attr时,propertyItem是undefined。不知道怎么做。如果我硬编码属性名称,它会工作(例如:d.crament) 假设您的属性项确实存在于数据集中,解决方案很简单:使用。例如: .attr("height", function(d) { return d[propertyItem] * 4; }); 原因是函数中的propertyItem只是一个字符串。如果

我有一个具有许多属性的对象,我正试图通过将特定属性传递给下面的
barChart
函数来创建一个条形图。但是当它到达
attr
时,
propertyItem
undefined
。不知道怎么做。如果我硬编码属性名称,它会工作(例如:
d.crament


假设您的
属性项
确实存在于
数据集中
,解决方案很简单:使用。例如:

.attr("height", function(d) {
    return d[propertyItem] * 4;
});
原因是函数中的
propertyItem
只是一个字符串。如果你这样做

d.propertyItem
。。。浏览器将查找一个名为
propertyItem
的属性,而不是查找字符串的相同属性。让我们展示一下:

var obj={
福:“这就是我想要的!”,
propertyItem:“这不是我想要的…”
};
var propertyItem=“foo”;
log(“obj.propertyItem返回:”+obj.propertyItem)
log(“obj[propertyItem]返回:”+obj[propertyItem])
d.propertyItem