0

を含む行にコードがヒットしないのはなぜalertですか?

window.Game = class Game
  constructor: ->
    rows: 22
    columns: 10
    board: []

createBoard: ->                                                                                                                                                                                           
  # Some code here...
  for x in [0...@columns]
    alert("THIS IS HERE")
  # More code down here...
4

1 に答える 1

2

おそらく@columnsですundefined

あなたのコンストラクタ:

constructor: ->
  rows: 22
  columns: 10
  board: []

単純にオブジェクトを作成して捨てるだけで、これは次のようになります。

constructor: ->
  o = {
    rows: 22
    columns: 10
    board: []
  }
  return

したがって、インスタンス変数は設定されず、コンストラクターはほとんど何もしません。おそらくあなたは次のように言うつもりでした:

constructor: ->
  @rows = 22
  @columns = 10
  @board = []

またはおそらく:

constructor: (@rows = 22, @columns = 10, @board = [ ]) ->

あなたのcreateBoardメソッドは実際には1レベルインデントされているため、Gameクラスのメソッドであると想定しています。

于 2013-07-01T02:00:47.910 に答える