Javascript 第5版 第6章
2009/10/21(水) 22:27 Javascript親記事へこのエントリーをはてなブックマークに追加



JavaScript 第5版の「6章 文」、「6.1 式文」~「6.15 return文」(81~98ページ)


JavaScript 第5版 - 6章 文(1) - (DxD)∞


6.2 複合文

{}*1で囲まれた部分は文ブロックという。
文ブロックは一つの文と同じ働きするが、文ブロック末には;は必要ない。
{
	var x = "bun";
	var y = "nomiss";
}// ;はいらない

*1 : 中括弧

6.8 for文

initirize;は一度だけ評価される。
initirize;
while(test){
	statement;
	increase;
}
と
for(initirize; test; increase;){
	statement;
}
対応している。

6.15 return文

return文は値を指定しないで使ったとき、値は返さず(つまり未定義)関数の実行を中断します。
function main(){
	var x;
	x = 10;
	return;関数の実行を中止
}


JavaScript 第5版の「6章 文」、「6.16 throw文」~「6.20 JavaScript文のまとめ」(98~103ページ)


JavaScript 第5版 - 6章 文(2) - (DxD)∞


6.17 try/catch/finally文

  • catch句とfinally句はそれぞれ省略可能だが、両方を省略することはできない。
finally文は例外があってもなくても実行される。
  • 例外発生のタイミング
例外発生のタイミングはfinally文が実行した後に起きるため、関数内のfinally文でreturnなどをすると例外を無視して関数を中止できる。
errorが発生するのはalert後になる。
try{
    var hoge = "foo";
    throw new Error("ero");
}finally{
    hoge = "bar";
    alert(hoge);
}

6.19 空文

空分とは
;
というような何にも実行されない;だけの文ですが、これが意味を持つのはforループで省略した形を書くときに気をつける必要がある。
var ary=["mi" ,"vi" ,"ei"];
var cAry = [];
var i;
for(cAry[i++] in ary) ; //;の前にスペースが必要
console.log(cAry);// cAryにaryの配列をコピー
//どうせやるなら
var ary=["mi" ,"vi" ,"ei"];
var cAry = [];
var i;
for(cAry[i++] in ary) /*空文*/ ; //空白を明示的に
console.log(cAry);// cAryにaryの配列をコピー
for(cAry[i++] in ary);
みたいに)と;がくっついてるとエラーになる。

名前:  非公開コメント   

  • TB-URL  http://efcl.info/adiary/019/tb/