元スレ+ JavaScript の質問用スレッド vol.93 +
JavaScript覧 / PC版 /みんなの評価 :
302 = :
上記は誤記した、下記に質問書き直す
c=0; if (なんか条件) c+=1;
とあるソースコードで上記のコードを見かけたんだけど
これってc=1;の代入じゃなくてc+=1;の加算代入にしてる意味って何かあるの?
303 = :
if文で{}括弧使わずカンマで区切って使ったりすると文字数が減る
if (a==b) {a=10; b=20; c=30;}
if (a==b) a=10, b=20, c=30;
304 = :
>>302
意味ないね
305 = :
>>303
な、なるほどこんな使い方が
306 = :
>>300
やはりリークするのですね、ありがとう
そこで疑問ですが、大きなアプリケーションなどを作る方はどのようにイベントリスナーの追加や削除をしているのですか?
追加するときにいちいちdocument.addEventListener ? ~ : ~;などとやっているのでしょうか
それとも関数を使って必ずdetach/removeするという形にしているのでしょうか
309 = :
意図不明の具体例っすか
310 = :
var a = 0;
var b = 0;
を
var a = 0, b = 0;
と書いてコードがババァにならないようにするとか。
313 = :
>>310それカンマ演算子ちゃう
function hoge() { alert('hoge'); }
if (a = 1, hoge(), a != b) alert('baka'); //hogeる
var b=1, hoge(); //エラー
318 = :
b=c, c=0;if (a==1 || a==4) b+=1, c+=1; else if (a==2) b+=2, c+=2;
↓
b=c, c=0;if (a==1 || a==4) b+=1, c=1; else if (a==2) b+=2, c=2;
つまり人がコードを読む上で上記の2つでは何か意味が違うってことですか?
319 = :
質問を間違えました、意味の違いは何だと思われますか?
322 = :
実行結果に変わりがあるわけじゃないんだし好きに書けばいいじゃないか
こんなくだらないことに拘って質問しまくんなよ
324 = :
馬鹿ばっかり
325 = :
ルリルリたん
326 = :
実は裏技でね
a = 1; b = 1; よりも a = 1, b = 1; にしたほうが処理速度が少し向上するの
実は裏技でね
a = 0; a = 1; よりも a = 0; a += 1; のほうが処理速度が少し向上するの
327 :
ただの代入にするとメモリの再割り当てが生じるだろ
328 = 327 :
コンマだと次は必ず式が来るがセミコロンだと次が式とは限らんだろ
コード解析処理に違いがあるだろ
329 = 327 :
314はfor使わずに同じコードわざわざ羅列してんのは速度重視してんの一目で分かるだろ
330 = :
ここできくのがいいのかわからないけど質問します。
ブログの最新記事のみに広告表示させたいんですが、
javascriptでできます?
331 = :
>>330
できます。
332 = :
>>395,306
原始的な addEvent なら
http://gist.github.com/758906/db5cd03c967c368a50d095854850fb16cf9f95b3
this 値を書き換えたいなら、window unload 時に detachEvent してください。
http://gist.github.com/758906/0e1047fea1f2bf4781811cc3e6d281196448b597
this 値に手を出すなら event まで書き換えておけば面倒がなくて良いと思います。
333 = :
次スレのテンプレにこれもいれて
http://cou929.nu/data/google_javascript_style_guide/
335 = :
オブジェクト指向の書き方を教えてください
PHPでいう以下の書き方をprototypeを使わない方法でjavascriptで書くとどう書けますか?
class A
{
private $string;
function _construct($arg)
{
$this->string = $arg;
}
public function echo()
{
return $this->string;
}
public function view()
{
return $this->hidden();
}
private function hidden()
{
return "秘密のあっこちゃん";
}
}
$obj = new A("文字列");
print $obj->echo();
print $obj->view();
336 = :
337 = :
>>334
> XHRならonreadystatechangeにnullでも突っ込め
これは回避できないパターンだったような
338 = :
>>337
すまんnew Functionを突っ込めだな
COM由来のは型が一致しないと代入できんから
339 = :
>>336
それstringがpublicになってる
http://ideone.com/Pe7ar
340 = :
341 = :
>>332,334
ありがとうございます
>>332
やはりクロージャを使わないaddEventでthisやeventオブジェクトの違いを関数内で吸収するか
detachEventをするために無名関数は使わず、unloadですべてdettachEventする仕組みを組まなければならないようですね
>>334
なるほど、上書きしたり削除しない親要素で監視するというのは盲点でした そうします
>コンテキスト共有の必要があるならthisにそれを持たせろ
これがよくわからないのですが、古いIEではthis = event.srcElementみたいに書くということでしょうか?
344 = :
>>341
var listener = {
draggable: false,
handleEvent: function(e) {
switch (e.type) {
case 'mousedown': this.dragging = true; return;
case 'mousemove': ...; return;
case 'mouseup': this.dragging = false; return;
}
}
};
document.addEventListener('mousedown', listener);
document.addEventListener('mousemove', listener);
document.addEventListener('mouseup', listener);
Netscapeのversion.6からこう書けた
Safariはversion 3、Operaは忘れたが、DOM4に入った(第三引数の省略も)
コールバックに渡す任意の「引数」としてthisを使えばスコープ依存を断ち切れる
thisの使い方を知らない「らいぶらり」があまりに多すぎる
345 = :
>>326-329
嘘を書かないでいただきたい
困ります
347 = :
意味変わらなくね?
類似してるかもしれないスレッド
- + JavaScript の質問用スレッド vol.93 + (1001) - [100%] - 2012/1/1 4:46
- + JavaScript の質問用スレッド vol.97 + (1001) - [97%] - 2012/3/1 3:31
- + JavaScript の質問用スレッド vol.96 + (1001) - [97%] - 2012/1/28 23:01
- + JavaScript の質問用スレッド vol.90 + (1001) - [97%] - 2011/10/26 4:18
- + JavaScript の質問用スレッド vol.90 + (1001) - [97%] - 2011/11/15 20:32
- + JavaScript の質問用スレッド vol.99 + (1001) - [97%] - 2012/5/7 4:32
- + JavaScript の質問用スレッド vol.98 + (1001) - [97%] - 2012/4/9 14:46
- + JavaScript の質問用スレッド vol.83 + (1001) - [97%] - 2011/2/24 8:02
- + JavaScript の質問用スレッド vol.94 + (1001) - [97%] - 2012/1/8 15:46
- + JavaScript の質問用スレッド vol.95 + (1001) - [97%] - 2012/1/17 4:16
- + JavaScript の質問用スレッド vol.113 + (1001) - [95%] - 2014/1/25 12:46
- + JavaScript の質問用スレッド vol.131 + (1000) - [95%] - 2017/1/25 8:01
- + JavaScript の質問用スレッド vol.130 + (1001) - [95%] - 2017/11/25 20:45
- + JavaScript の質問用スレッド vol.131 + (1004) - [95%] - 2018/3/7 13:30
- + JavaScript の質問用スレッド vol.132 + (1001) - [95%] - 2018/4/19 11:00
- + JavaScript の質問用スレッド vol.113 + (1001) - [95%] - 2014/3/15 21:30
- + JavaScript の質問用スレッド vol.133 + (1001) - [95%] - 2018/6/8 10:45
トップメニューへ / →のくす牧場書庫について