のくす牧場
コンテンツ
牧場内検索
カウンタ
総計:127,062,938人
昨日:no data人
今日:
最近の注目
人気の最安値情報

    元スレ+ JavaScript の質問用スレッド vol.120 +

    JavaScript覧 / PC版 /
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitter

    201 = :

    メモリリークしたという証拠がなければ、
    しないってことでいいじゃね?

    202 = :

    >>201
    お前天才だな

    203 = :

    まあ、普通のブラウザはしないわけで、
    しない。がデフォだよ。
    証拠をだすのは常識を否定する側の責任

    204 = :

    >>200
    IE6のSP3未満に関してはメモリリークすることをMSが公式に表明した
    他の環境でもリークすると言うのなら、
    まずはおまえがその証拠を出してくださいよということです

    205 = :

    >>204
    メモリリークする条件はDOMとスクリプトが混ざってる状態の話。
    その条件を満たしていないのだからメモリリークしない。

    メモリリークの話が出たからって何でもかんでも
    メモリリークするって言ってるわけじゃないんだよ。

    206 = :

    ie6sp2という糞ブラウザで起きた現象が他のブラウザでも起きると思う理由がわからん
    普通に考えて起きないだろ

    207 = :

    jQueryってこういう形でメモリリーク対策してたんだな。
    勉強になった。

    208 = :

    全部デレゲーションにしたらいい

    209 = :

    >>200
    すっごい以前のSafariでもそれは起こってて、メジャーアップデートで修正された思い出
    当時、この問題について言及しても「そんなマイナーブラウザで起こることwww」扱いだったけど
    今こうして熱く語られてるのはちょっと不思議

    210 = :

    んで>>39のケースではどう書くのは一番いいの?
    >>42のような書き方なんてほとんど見かけたこと無いしこれがメモリリークするなら著名な人のコード全てを否定することになるぞ

    211 = :

    >>199
    確かにメモリリークパターンではありませんが、>>134の下記コードはクロージャにする意味がない気がします。
    (window依存をなくしてStrict Modeを利用するなら window を bind する価値はありますが)

    (function main(global) {
     global.addClickEvent(function() {console.log(global) }
    })(window);

    addClickEvent(function() {console.log(window); });

    他にもcallbacksがグローバル変数である、グローバル関数を多量に生産している事など、改良の余地はありそうですね。

    212 = :

    >>210
    >>143に答えがあるんじゃないかな
    不要だと主張しながら質問するのは意味がさっぱりわからないけど

    213 = :

    現実的にはイベントをjqueryを使わずに管理することはほとんどないから
    問題になることはないじゃん

    214 = :

    今は脱jQueryが進んでるよ

    215 = :

    なんで?イベント周り面倒くさすぎるじゃん
    別のライブラリ使ってんの?

    216 = :

    イベントもろくに書けないザコっていんの?

    218 = :

    単に面倒くさいだけのところはライブラリに任せるのが基本だろ
    無能がいるようだが

    219 :

    別のライブラリに任せるとしたらそのライブラリが問題を吸収するよな
    かつてこういう問題があった、という知識はあった方がいいと思うけど

    220 = :

    var Color;
    (function (Color) {
    Color[Color["Red"] = 1] = "Red";
    Color[Color["Green"] = 2] = "Green";
    })(Color || (Color = {}));
    ;
    var a = Color.Green /* Red */;
    console.log(a);

    これどうして1って表示されるのか教えてください
    どうしてColorに代入してないのにColor.Greenで2を返すのかわかりません

    221 = :

    >>220
    TypeScriptのenumだな
    Color["Green"] = 2
    でメンバーに2を代入してるから
    ちなみに、代入の戻り値は代入した値だから、その後Color[2] = "Green"が実行される

    222 = :

    >>220
    ん?なんか変だぞ…1が表示されるはずがないな
    多分どっかでColorが定義済みだろ

    223 = :

    あ、すいませんtじゃなくて2です
    べんきょうになりあmした

    224 = :

    ついでにすいませんそのコードなんで無名関数の中で実行してるのにグローバルのColorに代入されちゃってるんですか?

    227 = :

    それは実測しだい。
    ==と===なら===のが早いだろうってのは期待できるが体感できるわけでねーし、
    状況に応じて使い分けるのだろ。

    str.lengthは事前に文字列って確定してること前提だから上二つと意味合いも違うし。

    228 = :

    >>192です。
    もし無理そうなら初めからメニューの最大の高さに合わせておくことにします。

    229 = :

    >>226
    if (!str) {
    // str が null, undefine, 空文字列 でない
    }
    普通は↑これでいいんじゃないの?

    232 = :

    >>192
    CSSじゃないんだからheightなんてプロパティはありません
    javascript 要素 高さ 取得
    でぐぐりましょう

    234 = :

    t 

    235 = :

    jQueryなどを使わなかったらイベント周り面倒くさいよな。

    $('.hoge').on('click', function() {}) と同等のことをするだけでも
    ループをいちいち使わないといけないし。

    >>208が全部デレゲーションにすればいいと言ってるけど、
    jQueryなら

    $(document').on('click', '.hoge, function() {})

    これだけでいいのがjQuery使わなかったら、.hogeと一致しているか?って
    調べないといけない。特定のセレクタに当てはまるか?ってどうやってかけばいいんだろう。
    いちいちclassNameがなにで~とかで比較するんじゃなくて、CSSセレクタで比較したい。

    面倒くさい処理が沢山あるって指摘したら、自分でライブラリ作ればいいんだよ!って
    言い出すし、本末転倒w

    236 = :

    >>214
    > 今は脱jQueryが進んでるよ

    脱jQueryっていうのはjQueryじゃなくて
    AngularJSを使いましょうとか別のライブラリを使おうって話で
    ブラウザネイティブのライブラリだけを使いましょうって
    意味じゃないよ。

    で、そういうライブラリはjQueryよりも重くて難しいので
    UIをJavaScriptだけで作ろうってサイト以外では使われてない。
    いわゆるウェブサイトやブログなんかではやっぱりjQueryが主流。

    脱jQueryが進んでるのはウェブアプリを作ってるところぐらいだよ。

    237 = :

    >>235
    書き方を知らないからjQueryに逃げてるだけじゃねえかよ

    238 = :

    >>236
    意味じゃないよってそれはお前の中で花

    239 = :

    >>237
    じゃあ、一行でセミコロンも使わずに書いてみて。

    君がレスするまで反論できねぇだろ?って
    思いながら待ってるよんw

    240 = :

    >>238
    なんか言いたいことがあるのなら
    反例でも持ってこようよw

    このままじゃ、言い返したい気持ちはあるが
    何も言い返せない。悔しい!としか見えないよんw

    241 = :

    一行でセミコロンも使わずに書けるよ。
    俺ならな!

    はい論破。

    242 = :

    はい惨敗w

    243 = :

    >>239
    1行で書くと日の話はしていない
    勝手に後出ししないように

    あと

    >$('.hoge').on('click', function() {}) と同等のことをするだけでも
    >ループをいちいち使わないといけないし

    これと同等のことをやるならループなんてしませんよ

    244 = :

    >>243
    つまり、jQueryと同等の短さには出来ないって
    認めるってことでいいよね?

    それが面倒だって言ってるんだけど、

    「書けるよ。俺ならな!」は分かったから
    さっさと書けよw

    言い返したいが何も言えない悔しい!w

    245 = :

    なんだ? jQueryと同じことをするコードを
    冗長に書けるって言ってるだけか?

    そりゃjQueryだってブラウザネイティブの
    命令使ってるわけで、そんなの当たり前だろ。

    まさか、俺はjQuery使わないでも書けるって
    言ってただけなのか?レベル低いな。

    246 = :

    後出しって言われないうちに先に行っておこう。

    forEachメソッドはループです。

    247 = :

    jQueryが一行で書いているのだから
    対抗するのであれば一行で書くのが筋だろう。

    249 = :

    >>229
    嘘教えんなカス
    遅いわ

    250 = :

    >>249
    すぐ後に訂正してるよ


    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / JavaScript一覧へ
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

    類似してるかもしれないスレッド


    トップメニューへ / →のくす牧場書庫について