グローバル変数に値を代入するには?

[上に] [前に] [次に]
MAME 1999/06/14(月) 12:55:08
こんにちは、MEMAと申します。

変数の使い方について教えて頂きたいのですが、グローバル変数に
値を代入させようとするとき、例えば、

var g_str;
function Store(str) {
    g_str = str;
}

のようにしてしまうと、Store()内のg_strは、ローカル変数と
解釈されてしまいますよね?これを、グローバルのg_strにstr
の内容を代入させたいのです。これを実現させるには、どうすれ
ばよいのでしょうか?CやBASICならよいのですが、JavaScript
は、変数の宣言をしなくても使えてしまうのでこまったものです。

ご存知の方は、教えて頂ければさいわいです。
なお、関数、変数は、外部ファイルに保存してあります。

よろしくお願いします。

Nobu3 1999/06/14(月) 12:58:58
function の外で宣言すれば大丈夫です。
「宣言できない」わけではありません。

なえ 1999/06/14(月) 16:28:30
>var g_str;
>function Store(str) {
>g_str = str;
>}
>
>のようにしてしまうと、Store()内のg_strは、ローカル変数と
>解釈されてしまいますよね?
いいえ、グローバル変数になります。
JavaScriptでは、functionの中でvar宣言した変数のみローカル変数になります。

Nobu3 1999/06/14(月) 16:32:08
え〜っと。MAMEさん?MEMAさん?

グローバルといっても、ページが変わると無効です。
念のため。っていうか、そういうことなの?
よく見てませんでした。すいません。

MAME 1999/06/15(火) 09:46:28
こんにちは、MAMEと申します。


Nobu3さん wrote --->

>グローバルといっても、ページが変わると無効です。
>念のため。っていうか、そういうことなの?

説明不足ですいません。そのとおりです。ページが変わっても変数を
有効にしたかったのです。結局、できないのですね。一応、ボクの
ほうでもいろいろ試した結果、応急処置的なことがひらめきましたの
で、そっちを試そうと思います。

なえさん、Nobu3さん、いろいろありがとうございました。

MAME 1999/06/15(火) 09:48:06
[[解決]]
こんにちは、MAMEと申します。

解決しました。

[上に] [前に] [次に]