Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/400.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_D3.js_Syntax_Data Visualization_Data Retrieval - Fatal编程技术网

Javascript 什么';增量操作符在这里做什么?它是如何改变比例的?

Javascript 什么';增量操作符在这里做什么?它是如何改变比例的?,javascript,d3.js,syntax,data-visualization,data-retrieval,Javascript,D3.js,Syntax,Data Visualization,Data Retrieval,上面的增量操作符在forEach块中做什么,具体来说: d3.tsv('data.tsv', (err, data) => { // clean the data data.forEach(d => { d.date = new Date(d.date); // x ++d[city]; // y` 它是如何改变比例的 完整代码:这种问题(“这东西在这里干什么?”)有时很难回答,因为我们不知道作者脑子里在想什么。但在这种情况下,我相信我有一种预感:作者只是错

上面的增量操作符在
forEach
块中做什么,具体来说:

d3.tsv('data.tsv', (err, data) => {
  // clean the data
  data.forEach(d => {
    d.date = new Date(d.date); // x
    ++d[city]; // y`
它是如何改变比例的

完整代码:

这种问题(“这东西在这里干什么?”)有时很难回答,因为我们不知道作者脑子里在想什么。但在这种情况下,我相信我有一种预感:作者只是错误地将字符串强制为数字

您可能知道,TSV数据是作为字符串加载和解析的,因此当字段中有数字时,我们必须强制它们。最常见的方法是,在row函数中:

d.foo = +d.foo;
return d;
正如您在本演示中所看到的,如果只执行
+d.foo
操作,对象将不会发生任何变化:

const obj={
值:“42”
};
+目标价值;
控制台日志(obj)

log(typeof obj.value)
这让我整天都在思考如何在不使用任何
=
的情况下正确地将字符串转换为数字。我愿意接受任何错误的表达。比赛开始了。@altocumulus我也考虑了逗号运算符。当使用行函数时,与使用前缀递增运算符相比,轴缺少顶值,为什么渲染不正确?编辑要添加的帖子images@user1076808因为增量解决方案不正确:最大值不是68,而是67。第二个图像是正确的输出。但是如果你问为什么轴没有显示数字67,这是一个完全不同的问题。我回滚了您的编辑。