Javascript或D3js表示法

时间:2014-11-12 07:13:41

标签: javascript d3.js

OR函数中有一个赋值运算符。

两个return语句的结果是什么?

参考:http://www.d3noob.org/2014/01/tree-diagrams-in-d3js_11.html

var node = svg.selectAll("g.node")
.data(nodes, function(d) { return d.id || (d.id = ++i); });

nodeEnter.append("text")
.attr("x", function(d) { 
return d.children || d._children ? -13 : 13; })

1 个答案:

答案 0 :(得分:1)

在您的示例中,通常是用于在d3中定义唯一索引的方式

var node = svg.selectAll("g.node")
.data(nodes, function(d) { return d.id || (d.id = ++i); });
//here if d.id exists and is truthy, just return d.id; if not, then assign d.id to ++i
第二个是相同的:

if d.children is (defined and truthy value) then return -13
if d.children is not defined or is falsy then return 13

(供参考:"Truthy" and "Falsy" Values