return/break文の妙味
1744 ワード
JavaScriptの中で、普通はプログラムをfunctionの中で半分まで実行させたい時、ある種類の操作を判断して或いは完成した後に後のコードを実行して、returnでfunctionを終了します.
たとえば:
//前後のスペースを削除するfunction spaceWord(vRet){
しかし、もし私が多層の判断をしたいなら、中断したいのはその中の一つだけです.
function(){
returnを使って運転を終了したら、コード3とコード4は実行できません.
このような需要をうまくbreakでコードの中断を実現して、関数全体を終了しません.
例えば:var stopRun=true、cando=false;function ww(){
上のロジックはコード2文を実行すると、break文が発生し、コードが循環実行コード4を飛び出すと、実行出力は2 4となります.コード3は阻止されましたが、関数の運行を阻止しませんでした.
breakはifの中では使えませんが、サイクルの中で使えますので、whileのような循環文を使ってコードの実行を中断できます.理論的にすべてのサイクルがこの機能を実現できます.whileを選ぶのは簡潔でifの代わりに判断できるからです.気をつけてwhileは最後にbreakを一つ加えてください.でないと、死のサイクルになります.
Whileの中に複数のif()breakを入れてブレークポイントとして、論理を制御する流れがあります.function(){
たとえば:
//前後のスペースを削除するfunction spaceWord(vRet){
if(!vRet) return vRet;
// , return
//while ,
while (true) {//
if (vRet.indexOf (' ') == 0) {
vRet = vRet.substring(1, parseInt(vRet.length));
} else if ((parseInt(vRet.length) != 0) && (vRet.lastIndexOf (' ') == parseInt(vRet.length) - 1)) {
vRet = vRet.substring(0, parseInt(vRet.length) - 1);
} else {
return vRet;// return
}
}
}consolie.logs(spaceWord);しかし、もし私が多層の判断をしたいなら、中断したいのはその中の一つだけです.
function(){
// 1...
if(stopRun == true){
// 2 ...
if(cando == false){
return
}
// 3 ...
}
// 4 ...
)returnを使って運転を終了したら、コード3とコード4は実行できません.
このような需要をうまくbreakでコードの中断を実現して、関数全体を終了しません.
例えば:var stopRun=true、cando=false;function ww(){
// 1...
while(stopRun == true){
// 2 ...
console.log(2)
if(cando == false){
break
}
// 3 ...
console.log(3)
break
}
// 4 ...
console.log(4)
)上のロジックはコード2文を実行すると、break文が発生し、コードが循環実行コード4を飛び出すと、実行出力は2 4となります.コード3は阻止されましたが、関数の運行を阻止しませんでした.
breakはifの中では使えませんが、サイクルの中で使えますので、whileのような循環文を使ってコードの実行を中断できます.理論的にすべてのサイクルがこの機能を実現できます.whileを選ぶのは簡潔でifの代わりに判断できるからです.気をつけてwhileは最後にbreakを一つ加えてください.でないと、死のサイクルになります.
Whileの中に複数のif()breakを入れてブレークポイントとして、論理を制御する流れがあります.function(){
var a=0;
while(a==0){
console.log(" ")
a++
if(a!=1)break
console.log(" ")
a++
if(a!=2)break
console.log(" ")
break
}
)