[過去ログ] + JavaScript の質問用スレッド vol.99 + (1001レス)
上下前次1-新
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
438(1): 427 2012/04/26(木)20:00 ID:??? AAS
>>429
まず、これで何が表示されるかという話だよな
for (var i = 0; i<5; i++) {
setTimeout(function() {
alert(i);
},1000);
}
439: 2012/04/26(木)20:01 ID:??? AAS
0が1回表示されて終わりじゃね
440: 2012/04/26(木)20:05 ID:??? AAS
いや5回表示されるだろ。
441: 2012/04/26(木)20:09 ID:??? AAS
setTimeoutの中が実行されるときはすでにi=5になってるから5がループの数5回表示される
442(4): 2012/04/26(木)20:10 ID:??? AAS
>>438
それ書くならこっちも書いとこうよ
for (var i = 0; i<5; i++) {
setTimeout(function(i) {
alert(i);
}(i),1000);
}
443: 2012/04/26(木)20:12 ID:??? AAS
>>442
なんじゃそれ
444: 2012/04/26(木)20:24 ID:??? AAS
>>437
thisなくした時点で
要らねーなw
445: 2012/04/26(木)20:27 ID:??? AAS
>>436
面白いとは思うがそこまで行くとちょっと使いづらいな
関数のままでいい
446: 427 2012/04/26(木)20:29 ID:??? AAS
続きは>>429を名乗る人が現れてからと思っていたが、
待たずに別解を書いておこう
これだと>>442と違ってsetTimeoutの外に他の処理も書ける
for (var i = 0; i<5; i++) {
(function(ii) {
setTimeout(function() {
alert(ii);
},1000);
// ここに他の処理
})(i);
省3
447(1): 431 2012/04/26(木)20:56 ID:??? AAS
そういや
(function() {
処理
})()
ってたまにみるが、いまいちわからん。解説頼みます。
448(1): 2012/04/26(木)21:15 ID:??? AAS
>>447
関数を即時実行するために()をつけてる
function () {}()
これは実行できない
!function (){}()
(function () {})()
(function () {}())
ここいらは先頭がfunctionで始まってないから実行できる
449(1): 2012/04/26(木)21:19 ID:??? AAS
人が入れ替わったのか、古参は眺めてるだけなのか…
450(1): 2012/04/26(木)21:25 ID:??? AAS
通常は再利用しやすいように変数に参照させておくだけ
(function() {処理})()
これを
a = (function() {処理})
として置き換えると
a()
となるわけだ
function() {処理}
に括弧を付けるのは
式はfunctionというキーワードから
省2
451: 2012/04/26(木)21:27 ID:??? AAS
分からずに>>431>>432を書いてたのか…
452: 2012/04/26(木)21:31 ID:??? AAS
今は昔と違って良書色々有るんだから勉強しろよ
453: 2012/04/26(木)21:31 ID:??? AAS
ここIDで出ないからレスの繋がりわかりにくいな
454(1): 2012/04/26(木)21:36 ID:??? AAS
_, ,_ パーン
( ‘д‘)
⊂彡☆))Д´) >>442
455(1): 2012/04/26(木)21:47 ID:??? AAS
>>454
殴る理由を聞こうか
456: 2012/04/26(木)21:51 ID:??? AAS
>>448
>>450
サンクス
>>450
自分の書けるコードの別の書き方って複数あるだろうから、
知らんのもあるさ。
431はprototypeとnewとonclickとクロージャと使うって縛りで
書いたコードだった。
457: 2012/04/26(木)21:55 ID:??? AAS
>>455
衝動
上下前次1-新書関写板覧索設栞歴
あと 544 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.013s