プロが教える店舗&オフィスのセキュリティ対策術

こんにちは
外部ファイル hello.js
-----------------------------
function aisatsu(){
var aa="hello"
}
-----------------------------
というファイルが存在した時にjikkou.htmlでaaの値、”hello”を呼び込みたい場合はどう記述すればよいのでしょうか?htmlのなかでaisatsu()をどこに記述していいのか分かりません。どうか教えてください。ただ、hello.jsのほうは実際の記述を簡略化したものであるのでそちらのほうはいじれません。

宜しくお願いします。

必要ないかもしれませんが、念のために私が最初に書いたhtmlの文です(もちろん実行できませんでした)
------------------------------------
<html>
<script language="javascript" src="hello.js">
aisatsu(){
document.write(aa);
}
</script></html>
------------------------------------

A 回答 (2件)

function内で「var」をつけて変数を宣言するとfunction外からその変数の内容を取得することができなくなります。

(returnで参照することはできます。)
なので変数の内容を取得する場合は「hello.js」の内容を

function aisatsu(){
var aa="hello";
return aa;
}

このように修正し、

<script language="javascript" src="hello.js"></script>
<script language="javascript">
var data=aisatsu();//「aisatsu()」関数の「aa」変数内のデータを引っ張り出す(return aa;)
document.write(data);//書いたり
alert(data);//アラートしたり
window.status=data;//ステータスバーに表示したり・・
</script>
    • good
    • 5
この回答へのお礼

returnがキーワードだったんですね。ありがとうございました。うまく意味が伝わるか分かりませんが、function aisatsu()のなかでは可能な限りシンプルにしておいて、それを実行するhtmlで読み取った値を自由に操作したかったので教えていただいた文はとてもよかったです。この後、returnについて自主学習してみます。ありがとうございました。

お礼日時:2007/10/17 23:55

-----------------------------


function aisatsu(){
var aa="hello"
}
-----------------------------





-----------------------------
function aisatsu(){
var aa="hello"
document.write(aa);
}
-----------------------------

か、aaをグローバル変数に~すればよさそうなもんですけど、どっちにしろhello.jsを触れないんじゃちょっと出来ないかと。


aa=helloはaisatsuのfunction内で消えちゃうので、どこにも引っ張り出せないように思います。





http://www.tohoho-web.com/js/function.htm
    • good
    • 0
この回答へのお礼

ご回答ありがとうございました。
hello.jsをいじらないでといったのはfunction aisatsu()を維持したかったためだったんですが、それ以外はいじってもらってよかった気がします。変な制約を作ってしまって申し訳ありませんでした。でも、functionで定義(?=用語がわかりません)した構文はそのままではfunctionから持ち出せないんですか?それが分かっただけでも大変参考になりました。ありがとうございました。

お礼日時:2007/10/17 23:49

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A