有人可以解释这段代码吗?我没有得到“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