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

    私的良スレ書庫

    不明な単語は2ch用語を / 要望・削除依頼は掲示板へ。不適切な画像報告もこちらへどうぞ。 / 管理情報はtwitter
    ログインするとレス評価できます。 登録ユーザには一部の画像が表示されますので、問題のある画像や記述を含むレスに「禁」ボタンを押してください。

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

    JavaScript スレッド一覧へ / JavaScript とは? / 携帯版 / dat(gz)で取得 / トップメニュー
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。
    レスフィルター : (試験中)
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitter
    251 : Name_Not - 2013/12/19(木) 00:39:06.68 ID:??? (-1,-29,-6)
    関数呼び出しコストがかかるから!==0の方がいいね
    252 : Name_Not - 2013/12/19(木) 01:03:07.94 ID:??? (+32,+4,-4)
    関数呼び出しコストよりも
    可読性を重視させたい。
    253 : Name_Not - 2013/12/19(木) 01:05:19.87 ID:??? (+57,+29,-20)
    数値型かどうかではなくて
    変数名が重要なんだよ。

    例ではよくaとかbとか
    適当なのが使われるけどさ
    この問題において変数名は重要なことの一つなんだよね。
    254 : Name_Not - 2013/12/19(木) 01:51:52.86 ID:??? (+3,-30,+0)
    文字列からURLを取り出してリンクにする処理をtext.replace(/~/g, "~")で行いたいです。

    前のリンクの</a>以降でURL文字列があったらリンク化するのですが、
    置き換えた文字列は検索対象じゃないので、連続していると1つ目以降が置換されません。
    対象文字列はすでに<a>~~</a>が含まれる可能性もあるため、</a>または行頭^から探しています。

    確認用コード:
    "ABCD<a>ABC</a>ABC ABC".replace(/((?:^|<\/a>)[^<>]*?)ABC/g, "$1<a>ZZZ</a>")
    結果:"<a>ZZZ</a>D<a>ABC</a><a>ZZZ</a> ABC"
    となり最後のABCが<a></a>で囲まれません
    希望は"<a>ZZZ</a>D<a>ABC</a><a>ZZZ</a> <a>ZZZ</a>"となることです。

    "ABCD<a>ABC</a>ABC ABC".replace(/((?:^|<\/a>)[^<>]*?)ABC/g, "$1<a>ZZZ</a>").replace(/((?:^|<\/a>)[^<>]*?)ABC/g, "$1<a>ZZZ</a>")
    とすれば希望通りになるので、while (true)で1回もマッチしなくなるまで回すことも考えたのですが、
    もっと良い方法があるのではないかとおもい質問しました。
    255 : Name_Not - 2013/12/19(木) 03:04:42.75 ID:??? (-1,-29,-24)
    keydownイベントではshiftKeyプロパティもありますが、
    shiftkeyだけを押下した時にもkeyCode=17になります
    これどういうことですか
    256 : Name_Not - 2013/12/19(木) 03:19:29.92 ID:??? (-1,-29,-17)
    keyCode17はctrlで、シフトは16でした
    257 : Name_Not - 2013/12/19(木) 22:42:05.72 ID:??? (+54,+26,-9)
    このスレの住民ってJavascriptどれくらいできんの?
    教えて
    258 : Name_Not - 2013/12/19(木) 23:04:52.75 ID:??? (+27,-29,-4)
    for文の外にvar出すより中に書いた方が早いんだね@firefox
    259 : Name_Not - 2013/12/20(金) 09:25:44.11 ID:??? (-6,-29,-2)
    jsdoitのオチスレとかないの?
    260 : Name_Not - 2013/12/20(金) 14:04:15.94 ID:??? (+51,+24,-17)
    >>258
    まじで?変な実装だな
    261 : Name_Not - 2013/12/20(金) 18:01:58.32 ID:??? (+0,-27,-8)
    内部の最適化処理に任せた方が早いらしい
    258はちゃんとjsprefで検証したから間違いない
    262 : Name_Not - 2013/12/21(土) 00:38:36.71 ID:??? (+57,+29,-45)
    作法として合理的なのはvarを外に出す方だから、
    一時の結果だけ見て中に入れるのは違うと思うけどね
    多少のブレはあっても、合理的な方に近づいていく
    263 : Name_Not - 2013/12/21(土) 03:06:51.33 ID:??? (+11,-21,-24)
    オブジェクトの参照と数値ってどっちがデータ大きいですか?
    264 : Name_Not - 2013/12/21(土) 05:56:35.73 ID:??? (+4,-30,-41)
    if (a){
    if (b){
    } else {
    処理A
    }
    } else {
    処理A
    }

    こういう処理を綺麗に書くにはどうしたらいいですか?
    265 : Name_Not - 2013/12/21(土) 07:50:43.48 ID:??? (+36,-28,+2)
    >>264
    a & b || !a
    266 : 265 - 2013/12/21(土) 07:58:06.05 ID:??? (+32,-29,-1)
    >>264
    a && b || !a に訂正
    267 : Name_Not - 2013/12/21(土) 10:14:45.15 ID:??? (+0,-28,+2)
    >>263
    多分だけど、参照≧数値。
    268 : Name_Not - 2013/12/21(土) 11:28:07.26 ID:??? (+3,-30,-111)
    if (a){
     if (b){
     } else {
      処理A
     }
    } else {
     処理A
    }




    if (a){
     if (b){
     } else {
      flag=true
     }
    } else {
      flag=true
    }

    if (flag) {
     処理A
    }



    if (a){
     if (!b){ flag=true }
    } else {
      flag=true
    }
    269 : Name_Not - 2013/12/21(土) 11:32:25.56 ID:??? (+3,-30,-99)

    if (a){
     if (!b){ flag=true }
    } else {
      flag=true
    }


    if (a){
     if (!b){ flag=true }
    }

    if (!a){
      flag=true
    }


    if (a && !b) { flag=true }
    if (!a) { flag=true }


    if ( (a && !b) || !a) { flag=true }


    flag = (a && !b) || !a


    if ( (a && !b) || !a ) { 処理A }
    270 : Name_Not - 2013/12/21(土) 11:44:05.87 ID:??? (+3,-30,-90)

    if ( (a && !b) || !a ) { 処理A }



    if ( !(!a || b) || !a ) { 処理A }


    if ( !(!a || b) || !a ) { 処理A }


    if ( ! ((!a || b) && a) ) { 処理A }


    if ( ! (a && !a || a && b) ) { 処理A }


    if ( ! (a && !a || a && b) ) { 処理A }


    if ( ! (a && b) ) { 処理A }


    if ( !a || !b ) { 処理A }
    272 : Name_Not - 2013/12/21(土) 14:28:19.10 ID:??? (+32,+14,+1)
    変形しすぎィ
    273 : Name_Not - 2013/12/21(土) 16:03:38.20 ID:??? (-2,-29,-6)
    >>271
    Attribute Not Equal Selector [name!="value"]
    http://api.jquery.com/attribute-not-equal-selector/
    274 : Name_Not - 2013/12/21(土) 16:57:51.89 ID:??? (+7,-20,-25)
    >>273
    すみません、説明が足りませんでした。
    ノットイコールが!=である事自体はわかっているのですが、それを「^=」と組み合わせる方法を知りたいのです
    275 : Name_Not - 2013/12/21(土) 18:13:18.82 ID:??? (+3,-30,+0)
    canvasをクリックするとその場所にdiv要素を追加するものを作りたいです。

    <div id="container" style="width:700px; text-align:left; margin: 0 auto">
    <div id="div_canvas" style="width:700px; height:400px;">
    <canvas id="canvas" style="width:700px; height:400px; z-index:0; border-style:solid;"></canvas>
    </div>
    ...
    </div>
    canvasはこのようになっていて、
    $("#canvas").click(function(e){
    var box = $('<div>');
    $("#canvas").append(box);
    box.css("position", "absolute");
    box.css("top", #div_canvasの左端を基準にしたx方向の距離 + "px");
    box.css("left", #div_canvasの左端を基準にしたy方向の距離 + "px");
    box.css("z-index", 100 + i++);
    }
    としてもページの左上を基準とした座標に表示されてしまいます。
    どうすればいいのでしょうか。


    を作り、
    276 : Name_Not - 2013/12/21(土) 18:30:15.70 ID:??? (-10,-30,-39)
    >>271
    $('a:not([href^="http://hoge.jp/"])').click(function(){
    confirm("えっちなのはいけないと思います");
    });
    277 : Name_Not - 2013/12/21(土) 19:01:29.08 ID:??? (+3,-30,-129)
    if (a){
     if (b){
     } else {
      処理A
     }
    } else {
     処理A
    }

    if (a){
     if (b){
      flag = false;
     } else {
      flag = true
     }
    } else {
     flag = true
    }

    flag = true
    if (a){
     if (b){
      flag = false;
     }
    }


    flag = ! (a && b)
    または
    flag = !a || !b
    278 : Name_Not - 2013/12/22(日) 00:58:23.64 ID:??? (+57,+29,-9)
    デバッグ時に、算出した座標に目印を表示したいです
    一番簡単な方法は何でしょう?
    279 : Name_Not - 2013/12/22(日) 01:24:44.07 ID:??? (+57,+29,-30)
    まじめに動的にそこに要素を表示するのが一番早いデスネ
    280 : Name_Not - 2013/12/22(日) 03:38:35.74 ID:??? (+57,+29,-21)
    プレステ3の起動画面みたいな「波」や「キラキラ」をJSで表現するにはどうやればいいですか?
    281 : Name_Not - 2013/12/22(日) 06:06:12.56 ID:??? (+57,+29,-12)
    「波」や「キラキラ」を表現できる力を勉強して君がつける。
    282 : Name_Not - 2013/12/22(日) 07:40:02.17 ID:??? (-1,-29,-15)
    Math.absは遅いらしいですが、absを使わずに絶対値を得る方法ないですか?
    floorの代わりに|0をしたりするみたいな感じで
    283 : Name_Not - 2013/12/22(日) 07:47:17.57 ID:??? (-2,-30,-33)
    var a = -10;
    var b = (a>0)?a:~a+1;
    console.log(b);

    これでfloor(abs())が出来ました\(^o^)/
    284 : Name_Not - 2013/12/22(日) 08:25:14.04 ID:??? (-6,-29,-12)
    ^=こんな演算子初めて見たわ
    285 : Name_Not - 2013/12/22(日) 10:17:38.94 ID:??? (-1,-29,-13)
    $=ならともかく^=程度を見たこと無いのは潜りw
    286 : Name_Not - 2013/12/22(日) 11:27:45.32 ID:??? (+57,+29,-19)
    割り算のつもりで>>を使っていると、優先順位が低いから計算の順序が想定と変わるから注意しろよ
    287 : Name_Not - 2013/12/22(日) 14:31:53.35 ID:??? (+57,+29,-42)
    JavaScriptに限らず、普段使わない演算子は案外知らないもんだよ
    288 : Name_Not - 2013/12/22(日) 16:03:17.69 ID:??? (-2,-30,-108)
    JSON.parseでjsonをobjectに変換したらjsonに日本語が含まれるとエラーになるんだけどググっても解決策が出てこない、助けて~
    289 : Name_Not - 2013/12/22(日) 16:06:01.64 ID:??? (+45,+18,-2)
    どーせ文字コード指定してねーんだろ
    290 : Name_Not - 2013/12/22(日) 16:31:28.41 ID:??? (+4,-30,-34)
    >>289
    ANSIになってました、どうもありがとうございます
    でもJSON.parseで文字コード指定できればいいのに・・・
    291 : Name_Not - 2013/12/22(日) 19:21:11.50 ID:??? (+41,-30,-44)
    var getID = document.getElementById.bind(document);
    こういうのを変数に入れておいて使いまわすの便利だぞ
    なぜかダイレクトにdocument.getElementById呼び出すより早い
    292 : Name_Not - 2013/12/22(日) 19:25:19.88 ID:??? (+46,-30,-32)
    function getID (str) {
    return document.getElementById(str);
    }
    っていう関数使ってるのよく見かけるけど
    これは関数呼び出しコストが高くついていただけない
    293 : Name_Not - 2013/12/22(日) 19:27:04.60 ID:??? (-5,-28,-1)
    $ディスってんの?
    294 : Name_Not - 2013/12/22(日) 19:31:35.93 ID:??? (+42,+19,-2)
    可読性落ちるので
    295 : Name_Not - 2013/12/22(日) 20:19:24.42 ID:??? (+59,+26,-2)
    >>265>>266では用途が全く違うな
    296 : Name_Not - 2013/12/22(日) 22:47:54.27 ID:??? (+57,+29,-42)
    長い名前でかつ使用頻度が高いもののエイリアスを作るってのはフレームワークでは常套手段
    関数呼び出しコストがーとかそんなのは度外視
    297 : Name_Not - 2013/12/22(日) 22:52:32.38 ID:??? (+10,-29,-74)
    >>291
    var doc=document;でdoc.getElementByIdのほうが速いのと同じ理屈かね?
    スコープチェーンの一番遠くにwindowがいてその中にdocumentが居るから、
    手近なスコープに置いとくと名前解決が早くなるとか何とかいう結構古いTips。
    今でも通用するのかは知らんけど、よく似た理屈な気がする。
    298 : Name_Not - 2013/12/22(日) 23:23:05.63 ID:??? (-1,-29,-48)
    bindメソッドを利用することで関数にしなくていいってのが利点かな
    jsprefで検証してみたら結構な差が出てた
    299 : Name_Not - 2013/12/23(月) 02:35:30.83 ID:??? (+91,+29,-36)
    二つの線分同士の距離はどう調べればいいでしょうか?
    http://en.wikipedia.org/wiki/Distance_between_two_straight_lines
    直線同士の公式は見つけました
    しかし線分同士じゃないので少し違うようです
    300 : Name_Not - 2013/12/23(月) 03:03:49.84 ID:??? (+70,+29,-16)
    >>299
    場合分けがいっぱいあって面倒くさそう。いろんなパターンを絵に描いて考えるといいよ。
    ってか、そんなの何に使うんだろう…
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / JavaScript スレッド一覧へ
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

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


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