≪ Today I learned.
RSS購読
    公開日
    タグ
    JavaScript
    著者
    ダーシノ

    ネストの深いところにある値の分割代入

    分割代入を使うことで、オブジェクトのプロパティを変数として抜き出せる。

    const obj = { data: 'xxx' }
    
    const { data } = obj

    深いところにあるプロパティを取得するためには、分割代入のときに同じような階層をつくる。

    const obj = {
      foo: {
          bar: {
              baz: 'xxx',
              piyo: 'piyo'
          },
          fuga: 'fuga'
      },
      hoge: 'hoge'
    }
    
    // 分割代入
    const {
        foo: {
            bar: {
                baz,
                piyo
            },
            fuga
        },
        hoge
    } = obj
    
    
    console.log({ baz, hoge, fuga, piyo })
    // {
    //   "baz": "xxx",
    //   "hoge": "hoge",
    //   "fuga": "fuga",
    //   "piyo": "piyo"
    // } 
    
    // foo: Cannot find name 'foo'.
    // bar: Cannot find name 'bar'.