Posts Tagged “oop”

javascriptの循環参照、circular dependencies。TypeError

by codechord. 0 Comments

Staircase Spiral Architecture  - stokpic / Pixabay

stokpic / Pixabay

javascriptを書いていて、requireの書き方で、ちょっとハマったのでメモ。

次のような要件を実装していくとします。

  • 子要素を生成することができるclass Person{}をつくる。
  • 要素を生成する機能は、class外に別途factory()メソッドを用意する。
  • Personにはchild()関数があり、factory()を実行して、子要素を作れる。

この仕組みを1ファイルですべて記述すると成功するのだけど、
ファイルを分割して、双方の関数をお互いがrequireしあうようにすると、
書き方によっては、そんな関数無いですよ!?と怒られます。

TypeError: factory is not a function

では。そのコードを紹介します。

続きを読む »