class Hoge name: 'hoge' data: [] constructor: (@name, initialData) -> @data.push(initialData) h = new Hoge('hoge', 1) m = new Hoge('moge', 2) console.log h.name, h.data console.log m.name, m.data $ coffee hoge.coffee hoge [ 1, 2 ] moge [ 1, 2 ] これ危険。インスタンス変数やと思ってたら prototype に宣言されてるから全インスタンスで同じオブジェクト見てる。インスタンス変数はコンストラクタ内で初期化すべし。 class Hoge constructor: (@name, initialData) -> @data = [initialData]