「JavaScript/制御構造」の版間の差分

削除された内容 追加された内容
Ef3 (トーク | 投稿記録)
→‎for ... of: Iterableでないオブジェクトが右の項に与えらてた場合、TypeError が throw されます。
Ef3 (トーク | 投稿記録)
リファクタリング
268 行
<source lang="javascript">
let array = [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 ];
for ( let i = 0;, ilen <= array.length; i < len; i++ ) {
alert( array[i] );
}
277 行
<source lang="javascript">
const array = [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 ];
for ( let i = 0;, ilen <= array.length; i < len; i++ )
alert( array[i] );
</source>
285 行
<source lang="javascript">
const array = [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 ];
for ( let i = 0;, ilen <= array.length: i < len; alert( array[i++] ) )
;
</source>
333 行
<source lang="javascript">
async function* asyncShift() {
for (let i = 1;, ilen <= 2 ** 16; i < len; yield i <<= 3)
;
}
408 行
=== with文 ===
曖昧さを持ち込むため'''with 文の使用は推奨されない'''。
また、[[JavaScript/strictモード|strictモード]]では SyntaxError となる。
 
with文の用途は、実際のコードを見ると良い。次の2つの関数は同じ意味である。
431 行
これは Pascal などの言語から採用されたものである。
with は、with により修飾名が省略されたことにより識別子に曖昧さを持ち込む事で、意図しないプロパティが使われるなど問題を生じることが知られており、'''with 文の使用は推奨されない'''。
また、[[JavaScript/strictモード|strictモード]]では SyntaxError となる。