
複数のHTMLファイルの更新日時をJavaScriptで調べる必要があり(サーバ側では仕様上できません)以下のように書いたのですが、readyStateで参照すると全てurls[2]の値になってしまいます。(つまり「/infomation/index.html」の更新日時)どのように回避すればよいのでしょうか。
onload=function () {
var urls = new Array(3);
urls[0]= "/about/index.html";
urls[1]= "/news/index.html";
urls[2]= "/infomation/index.html";
var request= new Array();
for(i=0;i<urls.length;i++){
request[i] = new XMLHttpRequest();
request[i].open("GET", urls[i]);
request[i].send(null);
request[i].onreadystatechange = function () {
if (request[i].readyState == 4) {
var lmdfd= request[i].getResponseHeader("Last-Modified");
以下、更新日時の確認処理
}
}
}
}
No.1ベストアンサー
- 回答日時:
function () {
if (request[i].readyState == 4) {
ここの i のスコープを考えると、forのところの i ですが、この無名関数が呼ばれる時点で i は 2 になっていますので、毎回 request[2].readyState を参照するというのはその通り。
request[i].onreadystatechange = (function(x) {return function () {
if (request[x].readyState == 4) {
var lmdfd= request[x].getResponseHeader("Last-Modified");
以下、更新日時の確認処理
}
})(i);
ご回答をいただいた上に改善案まで示していただき、ありがとうございます。
処理が行われる順序についてや、
こうした書き方を見ること自体がはじめてで、勉強不足を感じざるをえません。
調べてみたいと思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
jsonテキストデータの並び替え...
-
スマホ上で、左右スワイプで次...
-
jsで質問です。 formをsubmitし...
-
Outlookのアカウントがあるとメ...
-
オブジェクト配列の各メンバを...
-
初心者です。gulpでコンパイル...
-
jsで、配列内の文章を改行する...
-
タグを教えてください。
-
ラジオボタンを複数選択したと...
-
2025年相性がいい人のサイトの...
-
CookieをWebStoeageに変える
-
Adobe acrobat proでフォームを...
-
jqueryのselect2で検索欄の文字...
-
<tr>指定した表の行要素をボ...
-
食材の期限を管理するためにGAS...
-
ビデオのJSについて
-
鍵盤アプリで、スマホの画面に...
-
<div>のタッチ状態を維持したま...
-
jQueryでシンセサイザーを作っ...
-
プログラミング 学習
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
[jQuery UI] sortableを使いaja...
-
javascriptでAPIをcallしたい
-
.txtファイルの読み込み
-
こちら分かりますでしょうか?
-
変数にドットをいれることはか...
-
読み込み開始から読み込み終了...
-
jQueryでloadしたphpをapendTo...
-
ajaxでPOSTする変数の変数名を...
-
Win11 へのRufus と レジストリ...
-
階層別の組織図の自動作成について
-
JavaScriptでtabindexの変更っ...
-
Javascriptを使ってQRコード読...
-
同一ページ移動時ハンバーガー...
-
JavascriptからPHPへのAjax通信...
-
how's whether today in yufuin?
-
パソコンで動くjavascriptがス...
-
カンマ区切りのデータを配列に...
-
SQLのmaxで求めた値を変数に代...
-
スライドを最後の画像で止めたい
-
jQuery を外部ファイルから呼び...
おすすめ情報