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

    私的良スレ書庫

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

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

    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
    351 : Name_Not - 2014/07/13(日) 10:26:29.49 ID:???.net (+58,+29,-132)
    new Hogeと
    new Hoge()の違いなんて、現実的には問題になることはない
    そのどうでもいい問題に対して「これ読めや」って言ってクソ長いドキュメント持ってくる奴は
    知識はあるのかもしれないが頭は悪い
    なんでどうでもいい問題のためにクソ長いドキュメント読まないといけないんだよ
    352 : Name_Not - 2014/07/13(日) 10:28:32.68 ID:???.net (+57,+29,-5)
    ちゃんと読めばいい部分のリンクを張ってるのに
    何いってんだこいつ
    353 : Name_Not - 2014/07/13(日) 10:28:47.36 ID:???.net (+55,+29,-5)
    どうでもいいと思ってるのに、
    なぜわざわざ話に加わろうとするんだ
    354 : Name_Not - 2014/07/13(日) 10:30:48.37 ID:???.net (+77,+30,-76)
    >>349
    ログは全て読んでる?
    ABNFの日本語仕様書リンクも貼られていて、それを読んでABNFを理解すれば読めるはずだけど
    無知を自覚しておきながら「知らないことは判断のしようがねーだろ」はないと思うよ
    「どうやって学べばいいかわからない」とか「ここまで読んだが、この文章が分からない」ならまだわかるけどね
    ここはJavaScript を自ら学ぶ人のための質問スレッドだからね
    355 : Name_Not - 2014/07/13(日) 10:33:17.99 ID:???.net (+55,+29,-7)
    質問者は「どうでもいい」と思ってないから質問するわけだが
    356 : Name_Not - 2014/07/13(日) 10:36:47.61 ID:???.net (+60,+29,-13)
    >>350
    アスペ質問者は黙っとけ
    357 : Name_Not - 2014/07/13(日) 10:41:53.10 ID:???.net (+145,+29,-39)
    >>347
    この人は誰にいってるんだろ?
    >>346に対してかと思ったけど、コールバックの概念説明は「具体的な説明」ではないし…
    358 : Name_Not - 2014/07/13(日) 10:45:57.65 ID:???.net (+46,-29,-62)
    こんなのが()でくくらなくても書けるようにあんな構文規則にしてあるんだなあとちょっと感心した
    new abc.def.ghi().jkl.mno.pqr.stu()
    演算子の優先順位表だけじゃ説明できないから
    原典の理解は大切だなと再認識したよ
    359 : Name_Not - 2014/07/13(日) 11:29:12.52 ID:???.net (+88,+29,-16)
    「ABNFの日本語仕様書リンクも貼られていてって」
    それがくそ長いっての
    なんかナチュラルに馬鹿っぽいな
    360 : Name_Not - 2014/07/13(日) 11:29:56.55 ID:???.net (+62,+29,-1)
    >>358
    本当に分かったならちょっと説明してみてくれ
    361 : Name_Not - 2014/07/13(日) 11:31:27.67 ID:???.net (+57,+29,-33)
    「ドキュメントを貼る」以外の方法で説明できる奴が一人もいないのは何故なんだ
    抽象化能力ゼロなの?
    362 : Name_Not - 2014/07/13(日) 11:37:36.84 ID:???.net (+99,+28,-2)
    >>357
    お前だよカス
    363 : Name_Not - 2014/07/13(日) 11:39:45.34 ID:???.net (+57,+29,-7)
    イイゾイイゾwww
    理解できないクヤシサが伝わってきてとてもとても気持ちいいですwww
    364 : Name_Not - 2014/07/13(日) 11:43:09.95 ID:???.net (+77,+29,-6)
    >>362
    >>357から参加したんだけど、あなたは予知能力者なの?
    365 : Name_Not - 2014/07/13(日) 11:43:55.22 ID:???.net (+69,+30,-48)
    ()でくくらなくていい・くくらなきゃいけないのはそれぞれこういうケースだ
    興味があればこれ読めば規則が書いてあるよ、……とこれだけで終わっても別に良い

    ところでこの構文規則、必然性や必要性ってあるの?
    「なぜこうなってるか」が全然見えない
    366 : Name_Not - 2014/07/13(日) 11:49:19.96 ID:???.net (+67,+29,-21)
    >>359-360
    こういうことか

    「どうでもいい質問だが、俺様が気になるので理解してやる
    ただし、俺様は長文を理解できない
    初心者でもわかるように三行で説明しろ」

    諦めろ
    367 : Name_Not - 2014/07/13(日) 11:52:14.55 ID:???.net (+57,+29,-41)
    やっぱ説明できないのか
    知識は簡単に集められるけど抽象化するのは高度な知性が必要だからなプゲラ
    368 : Name_Not - 2014/07/13(日) 11:57:03.39 ID:???.net (+32,-30,-107)
    >>365
    もしこの捻った構文規則が無かったら
    >>358の new abc.def.ghi().jkl.mno.pqr.stu() みたいに書くと
    newが取るコンストラクタは abc か、abc.def.ghi().jkl.mno.pqr.stu()全体か、どっちにしかならないんだよね
    でも直感的には abc.def.ghi がコンストラクタであって欲しいよね?
    369 : Name_Not - 2014/07/13(日) 11:58:10.73 ID:???.net (+57,+29,-4)
    知ってるが、おまえの態度が気に入らない(AA略
    370 : Name_Not - 2014/07/13(日) 12:01:48.08 ID:???.net (+84,+30,-121)
    理解できない人は文脈自由文法とか勉強してきてくださいよ
    ある程度その辺の経験つんでると>>268のリンク先を見るまでもなく
    >>268の抜き出した部分を見ただけでなんとなく直感的に理由に気づける
    実際そのとおりなのか確かめるには>>268のリンク先きっちり読まないといけないと思うけど
    メンドクサイし、実際にブラウザで試してみると得られた直感的なイメージどおり動いてくれるんで
    自分的にはそれでいいです
    371 : Name_Not - 2014/07/13(日) 12:09:00.12 ID:TENJgKA8.net (+35,+30,-162)
    コロコロID変わる身だけどID出しておく

    >>368
    どうあって欲しいかは、個人的意見でいうと、むしろ対象abcか全体かのどちらかかなあ
    直感的には無名関数の書き方が頭にチラつく

    その三者のいずれであるかは、仕様策定者(orグループ)の好みの問題なのか
    歴史的経緯があるのか、それとも実用的な理由があるのか(こうじゃないとパーサの動き的に困るとか、開発効率に関わるとか)
    どれなのか、ってところがわからない
    ※なぜこれが知りたいかというと、類似問題に当たったときに考える・調べる・理由を探す材料になったり説明しやすくなったりするから。多言語でも応用可能かもしれないし
    372 : Name_Not - 2014/07/13(日) 12:20:49.91 ID:???.net (+67,+29,-87)
    >>371
    オブジェクトをネームスペース的に使ったりすることを考えるとabcだけっていうのは有り得ないなあ
    newしてメソッド送信っていうパターンはけっこう使うんで全部っていうのもちょっと嫌
    374 : Name_Not - 2014/07/13(日) 12:28:49.70 ID:???.net (+57,+29,-35)
    選択肢増やす事のどこが良い事なんだ
    どっちが先に演算されるかややこしくなるだろ
    わざわざ変数に収納しなくても必要なら()で優先順位決めれば良い
    375 : Name_Not - 2014/07/13(日) 12:31:34.90 ID:???.net (+30,-29,-12)
    いつも new (Hoge.foo()) としろと?w
    勘弁してくれw
    376 : Name_Not - 2014/07/13(日) 12:35:39.38 ID:???.net (+57,+29,-37)
    BNFとか文脈自由文法とか、
    JavaScriptで一般的なコーディングをする限り、ほとんど知る機会もないと思うんですが、
    どこで学んだのですか?
    情報処理系の大学とかならありそうですが
    377 : Name_Not - 2014/07/13(日) 12:36:57.40 ID:???.net (+3,-30,-24)
    new Hoge().foo() の方は (new Hoge()).foo() としなきゃいけないルールでもよかったかもね
    でも new Hoge().foo() が可能なルールにしたのは作者の趣味かな
    378 : Name_Not - 2014/07/13(日) 12:38:43.22 ID:???.net (+59,+29,-18)
    >>375
    どこに括弧入れてるんだ。馬鹿なの?
    379 : Name_Not - 2014/07/13(日) 12:42:13.91 ID:???.net (-1,-29,-24)
    web+db pressの総集編を検索したらBNFについての記事がいくつかあるようなので
    勉強してみます
    ありがとうございました
    380 : Name_Not - 2014/07/13(日) 12:55:06.84 ID:???.net (+63,+30,-92)
    文脈自由文法を知らなくてもコーディングはできるけど、
    文脈自由文法と正規文法の違いとか理解できてると
    苦労してゴミみたいなアルゴリズムのコード捻り出す事が減って良いと思いますよ。
    もっと早く勉強しとけばよかったと後悔してます。
    382 : Name_Not - 2014/07/13(日) 15:56:58.42 ID:???.net (+67,+29,-79)
    >>381
    それができるってことはその要素を生成すると同時にローカルパスをパスをサーバ側へ通知することもできるってことだからなあ
    ファイルのパスの途中に自分の名前とか入ってる間抜けがいるだろ?
    恥ずかしいじゃん
    383 : Name_Not - 2014/07/13(日) 16:22:52.32 ID:???.net (+52,-29,-58)
    firefoxでwindow.heightでウインドウの大きさを取得して
    キャンバスの大きさを設定したのですが左と上が画像のようにズレてしまいます
    原因分かりますか?
    /nox/remoteimages/96/bc/16ef2bccbed274a9d469ffe158ed.png
    384 : Name_Not - 2014/07/13(日) 17:12:16.04 ID:???.net (+86,+29,-110)
    webdbpressとwikipediaでABNFを理解しました
    分かってみれば、正規表現などよりも単純なものですね
    そしてあらためて>>267のサイトを見たのですが、
    この表記は、ABNFと微妙に違うような?
    =の代わりにコロンが使われているし、
    コロンが場合によっては複数だったりして、何か知らない規則が混ざってる感じです
    どういうことでしょう?
    385 : Name_Not - 2014/07/13(日) 17:17:47.73 ID:???.net (+56,+28,-28)
    デスクトップ画面をアピールしたい割合が強い
    386 : Name_Not - 2014/07/13(日) 17:19:05.00 ID:???.net (+8,-29,-6)
    >>383
    bodyにもスタイルはあるんだぜ
    せっかくインストールしたFierbugで確認してみよう
    387 : Name_Not - 2014/07/13(日) 17:27:11.15 ID:???.net (+18,-25,-35)
    >>384
    そのドキュメントの文法の記述方法は5章で解説されてる
    388 : 382 - 2014/07/13(日) 20:09:38.70 ID:???.net (+0,-29,-33)
    >>386
    marginを0にしたらピタっと合いました
    実は前作ってたゲームもマップチップが合わなくて挫折しまいました
    たぶんこれが原因ですね
    ありがとうございます!
    389 : Name_Not - 2014/07/13(日) 22:37:58.76 ID:???.net (+3,-30,-257)
    var frameid = 0;
    var request_url = "";
    chrome.webRequest.onBeforeRequest.addListener(
    function(details) {
    if (frameid === 0) {
    frameid = details.frameId;
    }
    request_url = details.url;

    if (frameid === details.frameId) {
    // 判定用にrequestBodyの再構築
    var size = details.requestBody.raw[0].bytes.byteLength;
    var dataview = new DataView(details.requestBody.raw[0].bytes);
    var request = "";
    for (var i = 0; i < size; i++) {
    var code = dataview.getInt8(i);
    if (code < 0) code += 0x100;
    request += String.fromCharCode(code);
    }
    390 : Name_Not - 2014/07/13(日) 22:38:46.88 ID:???.net (+3,-30,+0)
    // debug
    console.log(request.length+":"+request);

    // treasure_indexの場合Ajaxで再送信
    if (request.match(/raidboss.treasure_index/)) {
    console.log("----treasure start----");
    console.log("----send treasure packet----");
    var xhr = new XMLHttpRequest();
    xhr.open('POST', request_url, true);
    xhr.onreadystatechange = function(e){
    if (xhr.readyState==4 && xhr.status==200) {
    checkTresurePacket(xhr.responseText);
    }
    };
    xhr.setRequestHeader("Content-type","application/x-amf");
    xhr.send(new Uint8Array(details.requestBody.raw[0].bytes));
    }
    }
    },
    {urls: ["http://*.alteil.net/gateway/"]},
    ["requestBody"]
    );
    391 : Name_Not - 2014/07/13(日) 22:39:31.12 ID:???.net (+3,-30,+0)
    function checkTresurePacket(text) {
    var button3=0,button2=0,button1=0;
    // 順序を取得
    text.match(/button3.(.)/);
    button3 = RegExp.$1.charCodeAt(0);
    text.match(/button2.(.)/);
    button2 = RegExp.$1.charCodeAt(0);
    text.match(/button1.(.)/);
    button1 = RegExp.$1.charCodeAt(0);

    // 順序を配列に格納
    var order = [button1, button2, button3];
    // debug
    // console.log(list);
    // 特殊な順序
    if (order[0] == 3 && order[1] == 1 && order[2] == 2) {
    order = [2, 3, 1];
    } else if (order[0] == 2 && order[1] == 3 && order[2] == 1) {
    order = [3, 1, 2];
    }

    // 可視化
    var viewer = [];
    viewer[order[0]] = "赤";
    viewer[order[1]] = "青";
    viewer[order[2]] = "緑";
    alert(viewer.join(""));
    }

    このコードの解説をお願いします。background.jsというファイルの中身です。
    392 : Name_Not - 2014/07/13(日) 23:22:49.30 ID:???.net (+57,+29,-31)
    ゲームでチートしたいなら必死こいて勉強しな
    393 : Name_Not - 2014/07/13(日) 23:37:06.51 ID:???.net (+128,+29,-5)
    上にサイト貼ってあるんだからそこ使えよ
    394 : Name_Not - 2014/07/14(月) 00:05:48.18 ID:???.net (+75,+29,-29)
    >>393
    どうやって手をつけていいか分かりません
    なのでとりあえずスレにあったコードを理解しようと・・・

    >>393
    難しそうなのでスルーしてしまってました
    http://jsbin.com/jereloni/1/edit
    これで合っているのでしょうか?
    395 : Name_Not - 2014/07/14(月) 00:45:24.10 ID:???.net (+4,-29,-19)
    これってchromeの拡張機能じゃね
    396 : Name_Not - 2014/07/14(月) 01:10:53.58 ID:???.net (+57,+29,-50)
    PCをサスペンドから復帰させた時に時々chromeの動作が変になります
    リロードすれば直ります
    これはどうしようもないですよね?
    397 : Name_Not - 2014/07/14(月) 01:14:13.00 ID:???.net (+3,-30,-129)
    >>395
    その通りです
    他にも方法があるけどChromeの拡張機能が簡単なのでそれにしたそうです

    readmeの一部です
    ■使い方
    1. Google Chromeで「chrome://extensions/」へアクセス
    2. デベロッパーモードのチェックボックスを入れる
    3. パッケージ化されていない拡張機能を読み込む
    4. 同梱のdtf_boxを指定する
    以上で導入完了です。
    398 : Name_Not - 2014/07/14(月) 01:35:39.60 ID:???.net (+3,-30,-254)
    order配列に、ボタン1-3の順序を入れる
    // 特殊な順序
    order配列が、[3, 1, 2]なら[2, 3, 1]へ、
    逆に、[2, 3, 1]なら[3, 1, 2]へと交換している
    つまり、[3, 1, 2]←→[2, 3, 1]の入れ替え

    // 可視化
    viewer配列に、order配列に設定された、
    ボタンの順序に従って、赤青緑を設定している

    例えば、order配列が、[3, 1, 2]なら
    viewer[3]=赤、[1]=青、[2]=緑
    つまり、viewer[1-3]は青緑赤の順に並ぶ

    order配列が、[2, 3, 1]なら
    viewer[2]=赤、[3]=青、[1]=緑
    つまり、viewer[1-3]は緑赤青の順に並ぶ
    399 : Name_Not - 2014/07/14(月) 02:14:53.17 ID:???.net (+161,+29,-93)
    JavaScriptの勉強法についての質問があります

    大抵のwebアプリはjavascriptで書かれているので、ソースコードはいくらでも転がっています

    それで例えばgooglemapのような高度なアプリのソースを見て、参考にすることは可能ですか?
    それともブラウザからでは何らかのセキュリティなどが掛けられていて参考にしても意味が無かったりしますか?
    400 : Name_Not - 2014/07/14(月) 03:30:12.42 ID:???.net (+76,+30,-194)
    >>399
    無理です。
    正確に言うのならば時間を無駄に消費するだけです。

    なぜならgooglemapのような高度なアプリは
    速度を極限まで上げるために、コードを縮小化しているからです。
    つまり、わかりやすい変数名・関数名が、単なるa, b ,c という短い名前に
    置き換えることで転送速度を上げてます。

    また、作るときは作りやすさのために複数のファイルで作ります。
    この作りやすいファイル構成というのもJavaScriptの勉強の一つです。
    が同じく転送速度を上げるために一つないし、少数のファイルに結合しています。

    つまり高度なアプリのJavaScriptコードのほとんどは、ソースそのものであることはまずなく、
    人間が読んで勉強になるものにはなっていません。

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

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


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