毎日こつこつと参考書を見ながらjavascriptを勉強しています。サイトのソースを見て勉強する方法を最近しているのですが、壁に当たってしまったようなので質問させていただきました。
function MM_preloadImages() { //v3.0
var d=document;
if(d.images){ if(!d.MM_p) d.MM_p=new Array();
var i,j=d.MM_p.length,a=MM_preloadImages.arguments;
for(i=0; i<a.length; i++)
if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}
質問1:上記のようなスクリプトを見かけたのですが、最初のif文には{}があるのですが、if(!d.MM_p) d.MM_p=new Array();と
for(i=0;i<a.length; i++)の部分では{}が見あたらないのですがなぜでしょうか。
if文をしよう使用する場合には{}を使うと参考書に書いてありましたが、これには記述されていないのですが、普通に使用できているようなのですがなぜでしょうか。
質問2://v3.0とは何かのバージョンを示しているのでしょうか。
初歩的な質問で申し訳ありませんが、1つでもいいのでどなたかアドバイスをお願いします。
No.3ベストアンサー
- 回答日時:
そのプログラミングは市販のソフトで書いたものです。
非常に難解な書き方をしているのが特徴で、普通あま
り勉強の役にはたちません。2,3行で書けるような
ことを14、5行くらいにして書いたりしているから
です。
ネットで勉強するのは手軽ですが、信頼できるものは
ほとんどないといってよいです。
なので、わからないうちにネットのプログラミングに
慣れると変な癖がついてしまったりします。
No.2
- 回答日時:
質問1:について。
より正確に言うと、if文、for文の次に書くのは、1つの文です。
・ 普通、この1つの文は、ブロック{}が使われます。
・ ブロックではなく、1つの文が使われたのが
if(!d.MM_p) d.MM_p=new Array();
であり
for(i=0; i<a.length; i++) if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}
です。下の場合、
if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}
が、1つの文となっていてこれがループで繰り返されます。
なお、この説明は if文にelseのないときのものです。
No.1
- 回答日時:
{}の記号は、処理をいくつかまとめたいときに使うものと考えると納得行くと思います。
つまり、if()やfor()などの中の処理が一つしかない場合は{}でまとめなくてもいいということです。
ちなみに私は分かりやすくするために何でもかんでも{}付けてますけどね^^;
「v3.0」のほうは・・・
//の後なのでコメントなわけですから、
それが何を表しているかは完全に言い当てるのは難しいでしょうね。
何かのメモで、作者以外にはわからない場合もあるでしょうし。
まぁ仰るとおり大抵はバージョンのvでしょうね。
そのスクリプトが他人に二次利用してもらうものとして作ったのであれば、
配布した後に改良があった場合には「新しくなった」と伝えなければなりませんから
そんな感じのものでしょう。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・【お題】絵本のタイトル
- ・【大喜利】世界最古のコンビニについて知ってる事を教えてください【投稿~10/10(木)】
- ・メモのコツを教えてください!
- ・CDの保有枚数を教えてください
- ・ホテルを選ぶとき、これだけは譲れない条件TOP3は?
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・【コナン30周年】嘘でしょ!?と思った○○周年を教えて【ハルヒ20周年】
- ・ハマっている「お菓子」を教えて!
- ・最近、いつ泣きましたか?
- ・夏が終わったと感じる瞬間って、どんな時?
- ・10秒目をつむったら…
- ・人生のプチ美学を教えてください!!
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルVBAを動かすノートPC...
-
J2EEか.NET Framwork どちらを...
-
MSFormsとは何ですか?
-
pythonでの掲示板作成
-
超恥愚問ですが、CとC++の間に...
-
VC6.0 と Studio2008の違い
-
TypeScriptとNode.js
-
VBAの「for i=1 to cells(…」...
-
Javascriptを一から学ぶには。
-
ゲームプログラムの勉強方法で...
-
ホームページを作成してみたい
-
プログラムの起動、利用につい...
-
プログラム初心者
-
Javaでのエラーについて
-
サーブレットとPHPの違い
-
超初心者のJAVA入門(学生)
-
VC++ 6.0のDLLでは、キー入力受...
-
JasperExceptionのエラーログの...
-
VC++もしくはMFCからEXCELをコ...
-
携帯向けサイトのjava言語の埋...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAの「for i=1 to cells(…」...
-
OSS(オープンソースソフトウェ...
-
MSFormsとは何ですか?
-
超恥愚問ですが、CとC++の間に...
-
エクセルVBAを動かすノートPC...
-
データベースのデータをTextBox...
-
XMLとUMLの相違点?
-
中学生でいきなりJava
-
C#とDelphiの違いについて
-
C++ですごろくゲーム作成
-
VC#とVC#.NETの違い
-
画像編集ソフトの作り方
-
為替レートの取得方法
-
JavaScriptを用いて、〇図形を...
-
ゲームの作り方を教えて!!
-
JAVAプログラミングを勉強...
-
cまたはc++は半年である程度...
-
挫折しないプログラム勉強法
-
C/C++の独学について
-
Excel VBAマクロをマスターする...
おすすめ情報