このコードには奇妙な問題があります
Moonbeam.Input.KeyboardState = function Moonbeam_Input_KeyboardState() {
this._keys = new Array(2);
this._resetKeys();
}
Moonbeam.Input.KeyboardState.prototype = {
_resetKeys: function Moonbeam_Input_KeyboardState$_resetKeys() {
this._keys.clear();
},
_SetKeys: function Moonbeam_Input_KeyboardState$_SetKeys(keysPressed) {
this._resetKeys();
this._keys = keysPressed;
}
}
_SetKeys 関数を呼び出して値を渡します。行は this._resetKeys(); です。KeysPressed には、行 this._keys = KeysPressed に値が含まれています。_resetKeys() への呼び出しから戻った後、keysPressed には値が含まれていません。
これは私が期待する動作ではありませんが、javascript は私の専門ではありません。
これは私が間違っていることだと誰かに教えてもらえますか?
これがjavascriptの仕組みですか-そうであれば、再帰を行う方法がわかりません。
また、行 var _keysPressed = keysPressed; を追加しようとしました。_SetKeys 関数で this._resetkeys() を呼び出す前ですが、その値も失われます。
別の関数の呼び出し中に値を保持するにはどうすればよいですか?
スタ。