javascript - console.log問題,交換二叉樹左右節(jié)點,交換前后輸出相同結(jié)果
問題描述
代碼如下:class Tree { constructor(left=null, right=null){this.v = id++;this.left = left;this.right = right; } switch() {if(null != this.left || null != this.right){ let temp = this.right; this.right = this.left; this.left = temp;}if (null != this.left) { this.left.switch();}if (null != this.right) { this.right.switch();} }}var id = 0;var A = new Tree();var B = new Tree();var C = new Tree(A, B);var D = new Tree();var E = new Tree(D);var F = new Tree(C, E);console.log(F);F.switch();console.log(F);
控制臺為什么都輸出交換后的結(jié)果?求解
問題解答
回答1:應(yīng)該是你看錯了…… 你用 console.log(JSON.stringify(F)); 看看
