continue文を使い、for-in文のループの現在の処理を終了し、次の処理へ移るサンプル。
サンプル
ラベル指定なし
<script type="text/javascript">
var $obj = {
propA: "値1",
propB: "値2",
propC: "値3"
};
for ( var $prop in $obj ) {
if ( $obj[$prop] == "値2" ) {
continue; // 残りの処理をスキップ
}
document . write( $obj[$prop] + ', ' );
}
</script>
var $obj = {
propA: "値1",
propB: "値2",
propC: "値3"
};
for ( var $prop in $obj ) {
if ( $obj[$prop] == "値2" ) {
continue; // 残りの処理をスキップ
}
document . write( $obj[$prop] + ', ' );
}
</script>
↓↓↓出力結果↓↓↓
ラベル指定あり
<script type="text/javascript">
var $obj = {
propA: {
propA: "値1-1",
propB: "値1-2",
propC: "値1-3"
},
propB: {
propA: "値2-1",
propB: "値2-2",
propC: "値2-3"
},
propC: {
propA: "値3-1",
propB: "値3-2",
propC: "値3-3"
}
};
loop1: // ラベル
for ( var $keyA in $obj ) {
loop2: // ラベル
for ( var $keyB in $obj[$keyA] ) {
if ( $obj[$keyA][$keyB] == "値2-2" ) {
document . write( '<br />' );
continue loop1; // 残りの処理をスキップし、「loop1」ラベルのひとつ下の階層のループの次の処理へ移る
}
document . write( $obj[$keyA][$keyB] );
document . write( ', ' );
}
document . write( '<br />' );
}
</script>
var $obj = {
propA: {
propA: "値1-1",
propB: "値1-2",
propC: "値1-3"
},
propB: {
propA: "値2-1",
propB: "値2-2",
propC: "値2-3"
},
propC: {
propA: "値3-1",
propB: "値3-2",
propC: "値3-3"
}
};
loop1: // ラベル
for ( var $keyA in $obj ) {
loop2: // ラベル
for ( var $keyB in $obj[$keyA] ) {
if ( $obj[$keyA][$keyB] == "値2-2" ) {
document . write( '<br />' );
continue loop1; // 残りの処理をスキップし、「loop1」ラベルのひとつ下の階層のループの次の処理へ移る
}
document . write( $obj[$keyA][$keyB] );
document . write( ', ' );
}
document . write( '<br />' );
}
</script>
↓↓↓出力結果↓↓↓