• ベストアンサー

大域変数の保持

関数が終了しても値を保持しておけるのを 大域変数というらしいです。 要はIEを開いている間は値を保持しておく方法を 知りたいんですけど、皆さんどうやってます?

質問者が選んだベストアンサー

  • ベストアンサー
回答No.3

これならどうでしょう? いきているじかんをおぼえています。 var baboo = (function () {  var count = null;  return function (arg) {   var sa;   var mess;      if (! count) {    count = new Date;    return [count.getFullYear (), '年、baboo は誕生した'].join ('');   }   else {    sa = (+(new Date) -(count)) / 1000 |0;    return ['引数は、', arg, 'だけど、生後', sa, '秒ほど経過した。まだ漢字は覚えていない'].join ('');   }  }; })(); alert(baboo("hoge")); alert(baboo("huga")); alert(baboo("piyo"));

uzume_z
質問者

お礼

テストの案件有り難うございます。 ちょっと拝借してみます。

uzume_z
質問者

補足

確認が取れました。リロードしただけで死亡でした。

その他の回答 (3)

  • notnot
  • ベストアンサー率47% (4900/10358)
回答No.4

>変数が生きている時間を知りたいんです。 次のいずれかまで。 ・そのページを閉じる ・そのページから別のページに移る ・そのページをリロードする

uzume_z
質問者

お礼

ご回答有り難うございます。 ページ移って元に戻って来たらアウトなのですねorz_ クッキーかファイルに書くかしかないのですかね。

  • think49
  • ベストアンサー率59% (285/482)
回答No.2

#1 の補足より。 > 変数が生きている時間を知りたいんです。 大域変数(グローバル変数)はページが unload されるまでは生きています。 クロージャを使えば局所変数(ローカル変数)でも同じです。

uzume_z
質問者

お礼

ご回答有り難うございます。 unloadとはページ移ったらアウトなんでしょうか。 それともブラウザを閉じてもunloadされなければ 変数はずっと生きているのでしょうか。 その辺がよく分かっていないものですから。

  • SaKaKashi
  • ベストアンサー率24% (755/3136)
回答No.1

IEならクッキーを使う

uzume_z
質問者

お礼

ご回答どうでもです。 そういう普遍的なことではなくて 変数が生きている時間を知りたいんです。 もし、クッキーしかないのでしたら そのソースをご呈示下さい。