私的良スレ書庫
不明な単語は2ch用語を / 要望・削除依頼は掲示板へ。不適切な画像報告もこちらへどうぞ。 / 管理情報はtwitterでログインするとレス評価できます。 登録ユーザには一部の画像が表示されますので、問題のある画像や記述を含むレスに「禁」ボタンを押してください。
元スレ+ JavaScript の質問用スレッド vol.108 +
JavaScript スレッド一覧へ / JavaScript とは? / 携帯版 / dat(gz)で取得 / トップメニューみんなの評価 :
レスフィルター : (試験中)
その真のクロージャとか言ってる実装は、GCの関係で使い物にならんだろうな
英語Wikipediaの定義がまっとうなんだと思うが。
http://en.wikipedia.org/wiki/Closure_(computer_science)
http://en.wikipedia.org/wiki/Closure_(computer_science)
>>747
>最近のエンジンは必要な変数しかコンテキストに付加しない
へーへー
var a = b = 0;
function f(){ alert(a); }
こうした時、f では b は使われない、みたいな感じでしょうか
>最近のエンジンは必要な変数しかコンテキストに付加しない
へーへー
var a = b = 0;
function f(){ alert(a); }
こうした時、f では b は使われない、みたいな感じでしょうか
>>753
そのbは何だよw
そのbは何だよw
クロージャにすれば100%静的スコープになるわけだが
クロージャにしなくても100%見えてるわけじゃない
みたいなことが言いたいのでは?
クロージャにしなくても100%見えてるわけじゃない
みたいなことが言いたいのでは?
http://twitter.com/kyo_ago/status/380143189547438080
あごっちが言ってるこれのサンプルを誰かください
あごっちが言ってるこれのサンプルを誰かください
var a = 0;
var f = (function () {
var a = 10;
return function (c) { return eval(c); }
}());
console.log(f("a++;"));
console.log(f("a++;"));
console.log(f("a++;"));
console.log(f("a++;"));
var f = (function () {
var a = 10;
return function (c) { return eval(c); }
}());
console.log(f("a++;"));
console.log(f("a++;"));
console.log(f("a++;"));
console.log(f("a++;"));
var a = 0, b = 5;
eval('var c = 10;');
var f = (function (code) {
var a = 20;
eval(code);
f.self = this;
return function (code) {
return eval(code);
}
}('var d = 30;'));
eval.call(f.self, 'var e = 40;');
console.log(f('++a;')); // 21
console.log(f('++b;')); // 6
console.log(f('++c;')); // 11
console.log(f('++d;')); // 31
console.log(f('++e;')); // 41
console.log(f('var f = 50;')); // undefined
console.log(f('++f;')); // NaN or ReferenceError
eval('var c = 10;');
var f = (function (code) {
var a = 20;
eval(code);
f.self = this;
return function (code) {
return eval(code);
}
}('var d = 30;'));
eval.call(f.self, 'var e = 40;');
console.log(f('++a;')); // 21
console.log(f('++b;')); // 6
console.log(f('++c;')); // 11
console.log(f('++d;')); // 31
console.log(f('++e;')); // 41
console.log(f('var f = 50;')); // undefined
console.log(f('++f;')); // NaN or ReferenceError
>>765
連想配列のネストをたどるコードを書け
連想配列のネストをたどるコードを書け
しかし宣言と代入を分けた方が遅くなりそうなものですが、そうはならないのは何故ですか?
>>755
インライン関数がエラーで止まった時に上位スコープの変数確認できないから困る、
インライン関数がエラーで止まった時に上位スコープの変数確認できないから困る、
例えばこういうケースだとデバッガからaは確認できるけどbはできない
function test1() {
var a = 1, b = 2;
var f = function () {
throw 'test';
a;
}
console.dir(f);
f();
}
test1();
----console----
<function scope>
|
Closure
|
a: 1
function test1() {
var a = 1, b = 2;
var f = function () {
throw 'test';
a;
}
console.dir(f);
f();
}
test1();
----console----
<function scope>
|
Closure
|
a: 1
ちなみにこれだとこうなる
function test2() {
var a = 1, b = 2;
var f = function () {
throw 'test';
eval('');
}
console.dir(f);
f();
}
test2();
----console----
<function scope>
|
Closure
|
a: 1
arguments: Arguments[0]
b: 2
f: function () {
function test2() {
var a = 1, b = 2;
var f = function () {
throw 'test';
eval('');
}
console.dir(f);
f();
}
test2();
----console----
<function scope>
|
Closure
|
a: 1
arguments: Arguments[0]
b: 2
f: function () {
いやおまえそれGoogle Chromeの開発ツールの機能だろw
Firebugとかじゃそもそもconsole.dir(f)からClosureとか辿れないし、
aとbの中身も見たいならconsole.log(a,b)しとけよw
Firebugとかじゃそもそもconsole.dir(f)からClosureとか辿れないし、
aとbの中身も見たいならconsole.log(a,b)しとけよw
表示されるか否かでデバッグのしやすさが段違いなんだが
デバッグしたこと無いのか?
デバッグしたこと無いのか?
デバッグ便利ですとか言われても余分な参照をクロージャにずっと引きずられたら困る
GCとか意識したコード書いたことないの?
GCとか意識したコード書いたことないの?
最適化の問題じゃないよ?
参照が切れた変数をデバッグのためにずっと維持しておけってこと?
参照が切れた変数をデバッグのためにずっと維持しておけってこと?
別にこれが良いとか悪いとか言いたいんじゃなくて
流れに沿った豆知識を書きたかっただけだからもう気にしないで
流れに沿った豆知識を書きたかっただけだからもう気にしないで
別にそこ突っ込むとこじゃないでしょ
対比のための強調語として「真の~」って書きたくなるものでしょ
そのくらい気持ちを組んでよ
対比のための強調語として「真の~」って書きたくなるものでしょ
そのくらい気持ちを組んでよ
真の~なんていう言葉は、真にそれ以外が偽者な場合か、
そうではないけどあえて突っ込んでもらうために使うかどっちかにしとけよ。
紛らわしい使い方すんな。
そうではないけどあえて突っ込んでもらうために使うかどっちかにしとけよ。
紛らわしい使い方すんな。
var idname = "v6";
var a1 = document.getElementById(idname);
var a2 = document.getElementById(idname);
var a3 = document.getElementById(idname);
var a4 = document.getElementById(idname);
var i1 = setInterval(function(){a1.click();}, 1000);
var i2 = setInterval(function(){a2.click();}, 1000);
var i3 = setInterval(function(){a3.click();}, 1000);
var i4 = setInterval(function(){a4.click();}, 1000);
同じ要素を複数のintervalで自動クリックするやつなんですけど
ここでは4つですが数は2個以上を想定してください
これを修正してください
var a1 = document.getElementById(idname);
var a2 = document.getElementById(idname);
var a3 = document.getElementById(idname);
var a4 = document.getElementById(idname);
var i1 = setInterval(function(){a1.click();}, 1000);
var i2 = setInterval(function(){a2.click();}, 1000);
var i3 = setInterval(function(){a3.click();}, 1000);
var i4 = setInterval(function(){a4.click();}, 1000);
同じ要素を複数のintervalで自動クリックするやつなんですけど
ここでは4つですが数は2個以上を想定してください
これを修正してください
>786-787
アスペ乙
アスペ乙
>>788
日本語が意味不明
日本語が意味不明
>>788
var idname = "v6";
var elm = document.getElementById(idname);
for (var i = 0, ivid = []; i < 4; ++i) {
ivid[i] = setInterval(function () { elm.click(); }, 1000);
}
var idname = "v6";
var elm = document.getElementById(idname);
for (var i = 0, ivid = []; i < 4; ++i) {
ivid[i] = setInterval(function () { elm.click(); }, 1000);
}
複数のintervalとか言ってるんだから、intervalのリストが必要になるんじゃないか?
同じくエスパーだが
たぶん一定間隔じゃなくある程度ランダムな間隔でクリックしたいのだろう
たぶん一定間隔じゃなくある程度ランダムな間隔でクリックしたいのだろう
こうじゃないのか
for (var i = 0; i < 4; ++i) setTimeout(function () { elm.click(); }, 1000*i);
for (var i = 0; i < 4; ++i) setTimeout(function () { elm.click(); }, 1000*i);
元ソースから察するに要らないだろ
・i1、i2、i3、......単ローカル変数が何個あるか分からない
こんなもの使えない、意味もなくつけてるだけ
・精々数秒間程度、そもそもキャンセルがいることは稀
・i1、i2、i3、......単ローカル変数が何個あるか分からない
こんなもの使えない、意味もなくつけてるだけ
・精々数秒間程度、そもそもキャンセルがいることは稀
1つのintervalで1秒1クリックさせたいんですよ
そこでマルチスレッドぽく n数の分だけintervalを生成してそれぞれでクリックさせたいんですよ
さっきのコードの場合だとマルチスレッドで1秒間に4回くりっくすることになります
そこでマルチスレッドぽく n数の分だけintervalを生成してそれぞれでクリックさせたいんですよ
さっきのコードの場合だとマルチスレッドで1秒間に4回くりっくすることになります
>>799
残念ながらJavaScriptでは、タイマーで呼び出される処理も含めて全部一つのスレッド上で実行される
残念ながらJavaScriptでは、タイマーで呼び出される処理も含めて全部一つのスレッド上で実行される
前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / JavaScript スレッド一覧へ
みんなの評価 : 類似してるかもしれないスレッド
- + JavaScript の質問用スレッド vol.118 + (1002) - [97%] - 2014/8/29 22:30
- + JavaScript の質問用スレッド vol.105 + (1001) - [97%] - 2013/5/20 4:45
- + JavaScript の質問用スレッド vol.128 + (1001) - [97%] - 2016/2/26 6:45
- + JavaScript の質問用スレッド vol.107 + (1001) - [97%] - 2013/9/7 10:16
- + JavaScript の質問用スレッド vol.138 + (1004) - [97%] - 2019/4/20 23:45
- + JavaScript の質問用スレッド vol.106 + (1001) - [97%] - 2013/7/20 9:30
- + JavaScript の質問用スレッド vol.109 + (1001) - [97%] - 2013/10/7 13:16
- + JavaScript の質問用スレッド vol.104 + (1001) - [97%] - 2013/1/28 4:00
- + JavaScript の質問用スレッド vol.103 + (1001) - [97%] - 2012/11/9 15:30
- + JavaScript の質問用スレッド vol.102 + (1001) - [97%] - 2012/9/11 17:30
- + JavaScript の質問用スレッド vol.101 + (1001) - [97%] - 2012/7/16 14:15
- + JavaScript の質問用スレッド vol.100 + (1001) - [97%] - 2012/6/13 22:46
- + JavaScript の質問用スレッド vol.120 + (1002) - [95%] - 2014/11/8 1:15
- + JavaScript の質問用スレッド vol.125 + (1001) - [95%] - 2015/10/7 17:45
- + JavaScript の質問用スレッド vol.124 + (1001) - [95%] - 2015/7/16 1:30
- + JavaScript の質問用スレッド vol.123 + (1002) - [95%] - 2015/4/27 23:30
- + JavaScript の質問用スレッド vol.123 + (966) - [95%] - 2020/10/20 2:30
トップメニューへ / →のくす牧場書庫について