有人可以解釋這段代碼嗎?我沒有得到「for」結構中的內容。將數組轉換爲樹
var tree = {}
function addToTree(tree, array) {
for (var i = 0, length = array.length; i < length; i++) {
tree = tree[array[i]] = tree[array[i]] || {}
}
}
addToTree(tree, ["a", "b", "c"])
addToTree(tree, ["a", "b", "d"])
/*{
"a": {
"b": {
"c": {},
"d": {}
}
}
}*/
呃...這個代碼甚至可以工作嗎?如果是這樣,我想知道發生了什麼。 –
它將一個數組轉換成一棵樹,它就像一個對象樹,註釋代碼是樹的輸出。這是原始帖子:http://stackoverflow.com/q/3663096/2007780 –
這是一些醜陋的代碼! – bfavaretto