- 締切済み
javascriptのクラスの処理について
javascriptのクラスを利用した処理で分からない所がありますので 教えて下さい。 最初に 下記の「1.の方法」でhtml側にjavascriptを呼び出す記述を して動かしていましたが、「2.の方法」に変更しなければならなく なりました。 ところが、「2.の方法」でやりますと、メインのhtml側がフリーズ してしまいます。 調べてみますと、メモリーを食いつぶしていますので、何か永久ループの ような状態に陥っているようです。 こような場合、何かやり方がおかしいのでしょうか? ご存知の方がいらっしゃいましたら、ご教授お願いいたします。 === 1.の方法 ===(問題なく動きます)================= ---ソース(index1.html) <script type="text/javascript" src="js1.js"></script> <script type="text/javascript"> hoge.create( abc, "def"); </script> ---ソース(js1.js) var hoge = { xxx: ~~, yyy: ~~ create: function(val1,val2) { ~略~ }; === 2.の方法 ===(フリーズしてしまいます)=========== ---ソース(index2.html) <script type="text/javascript" src="js2.js"></script> <script type="text/javascript"> hoge_sub(); </script> ---ソース(js2.js) function hoge_sub(){ hoge.create( abc, "def"); } var hoge = { xxx: ~~, yyy: ~~ create: function(val1,val2) { ~略~ };
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- ANASTASIAK
- ベストアンサー率19% (658/3306)
---ソース(js2.js) function hoge_sub(){ return hoge.create( abc, "def"); }
varとfunction hoge_sub の位置を入れ替えると? フリーズする原因を特定するためにhoge.create()内でalertを置いてどこまで正しく通過してるか調べたらどうだろう
お礼
早速のご回答ありがとうございます。 私のソースを良くみましたら、「2.の方法」側の hoge.create( abc, "def"); の "def"が変数にならないといけないのに 文字になっていました。(これが原因でした) これも、教えて頂きました、alert のお陰です。 alertを必要な個所に置いてデータを調べる必要がありますね。 原因は分かって見れば簡単ですが、意外と..と言うか、思わぬ所にバグは潜んでいました。 ありがとうございました。
お礼
ありがとうございました。 先にANo.1様にお返事させていただきましたが、文字と変数のを勘違いしていたのが原因でした。 また、何かありましたら、よろしくお願いいたします。