0
我一直在努力去理解Zoomable treemap example by Mike Bostock的工作原理。「?」 javascript中的運算符應用於d3中的示例
我去了API reference of treemap,瞭解了基本的工作方式。 當我試圖瞭解上一個鏈接中顯示的自定義實現時,我迷了路。
我想我理解它期望分層結構化.json數據的方式。作爲一個用戶,我看到它由線到無限的「深度」數據的遞歸調用,但要行,我不明白這一點:
`var treemap = d3.layout.treemap()
.children(function(d, depth) { return depth ? null : d.children; })
...
`
什麼是"?"
一般的含義是什麼? "?"
是什麼意思?它會返回節點的depth
嗎?即0指根,1意味着孩子...
它也出現在其他功能上,像累積一個(我不明白無論它做什麼)
`function accumulate(d) {
return d.children
? d.value = d.children.reduce(function(p, v) { return p + accumulate(v); }, 0)
: d.value;
`
或者說顯示了一個名稱
`function name(d) {
return d.parent
? name(d.parent) + "." + d.name
: d.name;
}
`
我很感激你的幫助,讓我明白那裏發生了什麼。
我知道這將是一個簡單的解決方案,但我並不認爲我會如此基本。謝謝 – PleaseTeachMeHowToDoIt
@PleaseTeachMeHowToDoIt僅供將來參考,它的技術名稱是[**'三元運算符**](http://en.wikipedia.org/wiki/%3F :),它表示簡寫語法作爲'?:'的'if()' – MackieeE