
A 回答 (3件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
じっさい非同期処理でデータを受けた後に処理をしたいのであれば
xmlHttpRequest.onreadystatechange = function(){
if((xmlHttpRequest.readyState == 4 ) && ( xmlHttpRequest.status == 200 )){
test = 1;
}
}
のような処理になると思います。
もちろん非同期なのでalertをかけたタイミングで想定のデータが取れるとは
限りません。
タイミング次第ってことですよね。。
そもそも自作の非同期処理でAPIの取得内容によって、ページの内容を変えたり、他のJavascript(ブログパーツ等)を呼び出すことは難しそうですね。。
熱心にご回答頂きありがとうござました。
No.2
- 回答日時:
>xmlHttpRequest.open( 'GET', requestUrl,true);
requestUrlの指定がどうなっているのでしょうか?
たとえばlocation.hrefを指定してあげて、
hoge()を実行すればいけるかもしれません
<script>
test = 0;
function hoge(){
var xmlHttpRequest = new XMLHttpRequest();
xmlHttpRequest.onreadystatechange = function(){
test = 1;
}
xmlHttpRequest.open( 'GET', location.href,true);
xmlHttpRequest.send( null );
}
hoge();
document.write(test);
</script>
この回答への補足
度々回答頂きましてありがとうございます
requestUrlは外部APIのリクエストURLとなります。
こちらの関数内で、APIのレスポンスデータから判定してtestに1を代入したいと考えています。
No.1
- 回答日時:
ユーザー関数hoge()内の無名関数でグローバル変数を書きかえるんですよね?
無名関数を実行しないとどうしようもないかと?
aがローカルでしょりされるならこう
<script>
test = 0;
function hoge(){
var a = function(){
test = 1;
}
a();
}
hoge();
document.write(test);
</script>
aがグルーバルで処理されるならこう?
<script>
test = 0;
function hoge(){
a = function(){
test = 1;
}
}
hoge();
a();
document.write(test);
</script>
この回答への補足
分かり辛い質問にご回答頂きありがとうございます。
下記の場合は可能でしょうか?
例2:
test = 0; //引き継ぎたい変数
function hoge(){
//処理
var xmlHttpRequest = new XMLHttpRequest();
xmlHttpRequest.onreadystatechange = function(){
//処理
test = 1;
}
xmlHttpRequest.open( 'GET', requestUrl,true);
xmlHttpRequest.send( null );
}
hoge;
document.write(test);
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript カラーミーショップのsectionループ内で、[引数][戻り値]ありの関数的な処理を行いたいです。 1 2022/05/07 19:39
- Visual Basic(VBA) VBAでfunctionを利用しようとしたときに「引数は省略できません」というエラーが出ます 1 2022/10/15 16:30
- Java Javaの問題なのですが、 永久ループを使って以下に従って数値を出力するプログラムを作成する。 ・1 3 2023/06/06 18:43
- JavaScript javascriptのちょっとした動作不良(原因は突き止めたのですが) 1 2023/06/15 19:58
- PHP ECCUBE4のページ管理でPHPを実行させたい 1 2023/04/06 11:42
- Excel(エクセル) excel関数について 3 2022/06/06 21:58
- JavaScript JAVASCRIPT 2 2022/04/15 15:10
- JavaScript ソースコードのいじる場所が分かりません。 1 2022/12/23 02:06
- Ruby 初心者プログラミング 3 2022/10/12 11:31
- JavaScript javascript作成してます。ラジオボタンで判定するコードを書いてます。 1 2023/07/18 11:03
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
HTTPSのとき":"が"%3A"ではなく...
-
VB2005 配列から要素を検索す...
-
static_assertの警告版
-
linux メールサーバ メーリン...
-
ひとつ上の階層にアクセスさせ...
-
正規表現で半角数字1桁のみを全...
-
Vb.netのグローバル変数の宣言...
-
BIND 9での内部のみのDNSで、ホ...
-
【Jquery】changeイベント毎にa...
-
Objective-C 変数への代入エラー
-
データ整理のシェルスクリプト
-
構造体を引数で関数へ渡す
-
「オブジェクトが必要です。」...
-
Double→Integerへの変換で「意...
-
引数付きコンストラクタでコン...
-
Javascript 特定のフォルダのデ...
-
jspからjavascriptの変数引継ぎ
-
C#テキストボックスの文字を配...
-
商品コードを入力で、商品名、...
-
リファラー情報のエンコードを...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Boolean型配列中のTrueの有無を...
-
HTTPSのとき":"が"%3A"ではなく...
-
ボタンをクリックすると数が増...
-
Linux バイナリ実行できない "...
-
ASP+アクセスでのSQLコメントに...
-
Excel VBA の ChangeFileAccess
-
アンカーリンクをクリックさせ...
-
javascriptで文字挿入でtoggle...
-
ifreamをリロードしたい
-
static と externについて
-
同じ型【ハイフンと数字】だけ...
-
【正規表現】【javascript】CR...
-
System::Drawing::Color::XXXX...
-
MFCのキャプション変更
-
VB.NETで変数の型は自作...
-
【Jquery】changeイベント毎にa...
-
サブウインドウから親ウインド...
-
Vb.netのグローバル変数の宣言...
-
window.onloadでのfunction
-
hogehogeの由来
おすすめ情報