![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
こんばんは。
次のような配列
"http://www.yahoo.co.jp", "Yahoo!"
"http://www.google.co.jp", "google"
(...以下同様...)
で
aryLink[0]["URL"] → "http://www.yahoo.co.jp"
aryLink[1]["Text"] → "google"
というように参照できるようにしたいのですが
下記のスクリプトで「'aryLink[...]'はまたはオブジェクトではありません」というエラーになってしまいます。
どうすればよいのでしょうか?教えてください。
よろしくお願いします。
--
var DEBUG=1;
aryLink = new Array(2);
for (i = 0; i < aryLink.length; i++) {
aryLink[i] = new Array();
}
var IE = WScript.CreateObject("InternetExplorer.Application");
IE.Navigate("http://www.yahoo.co.jp");
while(IE.busy);
while(IE.Document.readyState != "complete");
var objTagsAs = IE.Document.all.tags("A");
if(DEBUG) {
for (i = 0; i < 5; i++) {
WScript.Echo(objTagsAs[i] + "," + objTagsAs[i].innerText);
}
}
for (i = 0; i < objTagsAs.length; i++) {
aryLink[i]["URL"] = String(objTagsAs[i])
aryLink[i]["Text"] = String(objTagsAs[i].innerText);
}
No.1ベストアンサー
- 回答日時:
> aryLink = new Array(2);
> for (i = 0; i < aryLink.length; i++) {
> aryLink[i] = new Array();
> }
より、0番目と1番目にしか配列(new Array())が確保されていません。
しかし、objTagsAs は2個以上の要素を持っていると思われるため、
> for (i = 0; i < objTagsAs.length; i++) {
のループで i が2になったとき、anyLink[2] は配列ではないのに anyLink[2]["URL"] というアクセスをしているため、エラーとなっているのです。
つまり anyLink は、objTagsAs と同じ数の要素に配列を確保しておかなければならないのです。
var objTagsAs = IE.Document.all.tags("A");
var aryLink = new Array(objTagsAs.length); // objTagsAsと同じ要素数で確保
for (var i = 0; i < objTagsAs.length; i++) {
anyLink[i] = new Array(); // ここで配列を確保
aryLink[i]["URL"] = String(objTagsAs[i])
aryLink[i]["Text"] = String(objTagsAs[i].innerText);
}
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript EasyUIのSubGrid(jquery)におけるObjectに入れた連想配列について 1 2022/05/02 11:21
- C言語・C++・C# C#テキストボックスの文字を配列にいれてその後表示する 4 2022/07/17 04:47
- JavaScript GoogleChart 階層ごとのブロックの長さを個別に設定したい 1 2022/07/06 14:27
- JavaScript 画像の表示位置 3 2022/12/23 08:25
- PHP PHPのエラーの解消法について教えて下さい。 1 2023/02/06 10:48
- JavaScript jQueryでのドラッグアンドドロップについて 1 2022/07/07 21:04
- JavaScript gasについて 1 2022/05/31 21:51
- C言語・C++・C# C# で、あるフォルダー内にあるすべてのテキストファイルを別のフォルダーにコピーする。 4 2022/11/21 13:23
- JavaScript 1日1回引けるJavaScriptおみくじについて 1 2022/12/12 22:28
- PHP 入力した部分を表示させたまま(保持)するにはどうすれば良いでしょうか? 1 2023/01/25 11:14
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
二次元配列を使って順位をだす...
-
同じIDで定義した要素の配列を...
-
雪を降らせるみたいな、ゆらゆ...
-
Ajax:getElementsByTagNameで...
-
JSONデータを50音順でソートしたい
-
メソッドが返す配列オブジェク...
-
C#テキストボックスの文字を配...
-
関数内の配列を関数外で使うに...
-
変数内容が'変数名'の文字列な...
-
undefinedを表示させない方法は...
-
JavaScriptでの動的な多次元配...
-
JavaScriptで二次元配列?
-
jQueryで文字数カウンタ(複数...
-
JavaScriptで配列のオブジェク...
-
javascriptを用いて作成された...
-
jspからjavascriptの変数引継ぎ
-
二次元配列の全要素の全要素を...
-
javascript 変数名の連結をしたい
-
関数でy=g(x)のgとは何の略です...
-
なぜmatchメソッドがエラーにな...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
同じIDで定義した要素の配列を...
-
C#テキストボックスの文字を配...
-
jspからjavascriptの変数引継ぎ
-
javascript 変数名の連結をしたい
-
二次元配列を使って順位をだす...
-
React hooksが値を返して配列変...
-
undefinedを表示させない方法は...
-
フォーム入力値の重複チェック
-
javascriptで行を抽出したいです。
-
JavaScriptでの動的な多次元配...
-
多次元配列から最大値を1行また...
-
HTMLで誕生石と星座をアラート...
-
JSONデータを50音順でソートしたい
-
重複しないようにランダムで表...
-
1から20までの整数から、重複な...
-
JavaScriptにおける[] とか :...
-
gas 配列
-
【JavaScript】オブジェクト型...
-
WSH(Jscript)でファイル一覧
-
JavaScriptで簡単なクイズを作...
おすすめ情報