阮一峯,es6對象的解構賦值中一個例子的疑問

 其中對loc對象進行解構賦值,我輸出了阮老師的寫法是不一樣的,不知道是不是他爲了省略寫成{start: Object},反正控制檯輸出的是{start: {line: 1, column: 5}}

阮老師是這樣寫的:

const node = {
  loc: {
    start: {
      line: 1,
      column: 5
    }
  }
};

let { loc, loc: { start }, loc: { start: { line }} } = node;
line // 1
loc  // Object {start: Object}
start // Object {line: 1, column: 5}

實際輸出:

const node = {
    loc: {
        start: {
            line: 1,
            column: 5
        }
    }
};

let { loc, loc: { start }, loc: { start: { line }} } = node;
console.log(line) // 1,實際輸出1
console.log(loc)   // Object {start: Object} 阮老師這樣寫我理解不了,實際輸出是:{start: {line: 1, column: 5}}
console.log(start) // Object {line: 1, column: 5},實際輸出:{line: 1, column: 5}

參考:

阮一峯es6變量的解構賦值

https://es6.ruanyifeng.com/#docs/destructuring

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章