タグ

ブックマーク / qiita.com/POPOPON (1)

  • console.log の落とし穴:console.log にはオブジェクトの参照が渡るので気を付けよう - Qiita

    TL; DR console.log()に大きなオブジェクトや配列を渡すと、console.log()を呼び出した時点での値ではなく、コンソールでそれをクリック展開した時点で評価した値が表示される。 もう少し詳しく console.log()に大きなオブジェクトを渡すとコンソール上で省略されて表示されますが、その省略表示を展開すると、console.log()が呼び出された時点の値ではなく、展開したその時点で評価した値が表示されます。 つまり例えばあるオブジェクトに操作を施す前にconsole.log()を取っていても、実行終了後のコンソールには操作を施した後のオブジェクトが表示されるということです。 要はオブジェクトへの参照を保持しているような挙動です(参考)。 例 (以下の例ではわかりやすさのため常に省略表示されるconsole.dirを使っています) obj.aをに値を代入する前後で

    console.log の落とし穴:console.log にはオブジェクトの参照が渡るので気を付けよう - Qiita
    tuki0918
    tuki0918 2019/05/21
  • 1