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

    私的良スレ書庫

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

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

    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
    451 : Name_Not - 2019/06/17(月) 12:57:16.60 ID:???.net (+38,+30,-98)
    >>440
    あらゆる型毎にコードを用意する必要なんかなくて、ただ欲しい型に変換すればいいんだからあまりコストはかからないと思うよ
    numberを期待してるところにオブジェクトが来ても、もしかするとvalueOfが定義されてるかもしれないでしょ?
    numberを期待してるところにbignumが来たらそれで弾くっていうのも勿体ない
    JSはスクリプト言語でもあるし、基本的に来る値は寄越した方に責任があると思う
    だから未知のものに怯えずに取り敢えず来たものは使おうとしてみるっていうのは悪くないと思う
    452 : Name_Not - 2019/06/17(月) 14:39:51.66 ID:a6fecDOj0.net (-15,+29,-105)
    >>445
    > map みたいなもので、1行で書けて、ループの記述を排除できれば、うれしいです。

    ループをそこまで避けたがる理由、よく分からん…コーディング規約???
    可読性についても >>352 さんのような意見もあるし、チーム構成によるかも知れず、保守担当(考えだしたらキリないな)
    規約に関して言えば、DOM 操作に関してどうなっているものやら…?
    453 : Name_Not - 2019/06/17(月) 14:42:11.88 ID:a6fecDOj0.net (-27,-30,-292)
    何にしても実装依存…?

    >>447
    ウチではこんな結果
    IE11 は "innerHTHL += " の部分の途中で「この操作を完了するための十分な記憶域がありません」とギブアップ。

    do ... while / while() {} / for
    の速度比較やってるサイトも存在したような気もする

    他には、jQuery で、古いIE向けの div#foo とか div.foo とかのハンドオプティマイズが逆効果になっているとか何とか


    x86/x64 なら「文字列の追加処理」のコストが高いのは当然のような気がしないでもない
    都度 realloc() のような処理をして、ヒープ領域からメモリ領域を確保してそう
    innerHTML の実装は分からんけど、大きめのバッファを確保しているのかも知れず、状況次第で innerHTML 変更のコストもバカにならないかも


    do ... while で100回やるとき

    let i = 100;
    do {
    i--;
    console.log(i);
    } while(i)

    とか書くのは可読性の面で駄目なんだろうなあ…
    454 : Name_Not - 2019/06/17(月) 21:45:13.81 ID:???.net (+30,+29,-4)
    これで完璧かはわからないけどレイアウトを強制するようにしてみた
    http://jsperf.com/document-fragment-vs-innerhtml-vs-looped-appendchild/94
    455 : Name_Not - 2019/06/17(月) 22:44:19.58 ID:???.net (-23,-25,-6)
    >>454
    そのコードって本当にdiv変数見えてるの?
    456 : Name_Not - 2019/06/18(火) 00:25:05.62 ID:???.net (-28,-30,-183)
    >>444
    ありがとうございます!
    すいません質問の仕方がよくなかったです。
    デフォルト引数とかよりももっともっと低級の質問でした…

    const fn = (obj)=>{

    const keys = Object.keys(obj);

    for(let i = 0; i < keys.length; ++i) {

    console.log(keys[i]);

    }

    };


    fn({a:0,b:1,c:2,d:3,e:4,f:5});

    上のコードで関数fnに渡されているオブジェクトは…

    const obj = {a:0,b:1,c:2,d:3,e:4,f:5};
    fn(obj);

    のように定義してから渡さなくてもいいの?というのが疑問なんです。
    457 : Name_Not - 2019/06/18(火) 00:39:48.30 ID:???.net (+34,+29,-45)
    >>456
    はい。直接書いちゃって構いません。
    コードの分かりやすさや、効率のために変数に入れてから使う方がよいことももちろん多くはありますが、少なくとも文法上はまったく問題なく、またよくそのように書かれています。
    458 : Name_Not - 2019/06/18(火) 01:02:59.23 ID:???.net (+32,+29,-4)
    >>457
    これでモヤモヤが晴れました!
    ありがとうございました。
    460 : Name_Not - 2019/06/18(火) 01:52:58.75 ID:???.net (+28,+29,-37)
    >>459
    いい加減なこと言うな!
    無名の変数とやらの具体例を出してみろ!
    461 : Name_Not - 2019/06/18(火) 02:14:52.33 ID:???.net (+31,+29,-3)
    >>460
    ごめんそうだね
    何で変数って言ったんだろう俺
    462 : Name_Not - 2019/06/18(火) 02:15:33.67 ID:???.net (+16,+28,-2)
    土下座して謝れ
    463 : Name_Not - 2019/06/18(火) 02:23:28.15 ID:???.net (+27,+29,-9)
    分かればいいんだ…
    ビックリマーク付けてすまなかった…
    464 : Name_Not - 2019/06/18(火) 02:26:27.47 ID:???.net (+13,+25,-1)
    ゆるしてやんよ
    465 : Name_Not - 2019/06/18(火) 03:03:19.95 ID:???.net (-29,-29,-71)
    parseIntって、整数にするやつって習ったのだけど、
    「4.956…」とかの数字を「4」って感じに小数点以下を切り捨てるのは、また別のメソッドですか?
    切り捨ては、Math.floorしか方法はないですか?
    468 : Name_Not - 2019/06/18(火) 11:45:31.71 ID:???.net (-16,-18,-76)
    ページを開いた時、マウスの座標を取得する方法ってないんでしょうか?
    mousemoveイベントで取得する方法だとページを開いてから1ピクセルでもマウスを動かすまでは取得できなくて不便だなぁと困っております
    469 : Name_Not - 2019/06/18(火) 12:28:57.10 ID:???.net (+33,+30,-42)
    そもそもタッチ系のデバイスだと
    タッチされた後マウスが動くまでポインタが消えるものもあるし
    そう考えると開いたときのマウス位置を取るってことは、開かれる前の最後に起こったイベントを取りたいってことで
    越権行為だということが分かるよね
    471 : Name_Not - 2019/06/18(火) 12:41:38.38 ID:???.net (+7,+16,+0)
    >>468
    あるよ
    472 : Name_Not - 2019/06/18(火) 13:20:01.33 ID:???.net (+27,+29,-13)
    そこ気になるのにwindowは気にならないのかw
    473 : Name_Not - 2019/06/18(火) 13:33:50.40 ID:???.net (+30,+27,-11)
    windowが作られるのはウインドウが出来た時に決まってるじゃん
    474 : Name_Not - 2019/06/18(火) 13:45:47.52 ID:???.net (+18,+20,-23)
    ウインドウって?ブラウザのこと言ってる?タブ複数開いたらどうなる?
    475 : Name_Not - 2019/06/18(火) 14:20:07.11 ID:???.net (-5,+1,+0)
    ブラウザの実装次第
    476 : Name_Not - 2019/06/18(火) 14:20:23.70 ID:???.net (+27,+29,-16)
    そして今はブラウザの実装の話なんかしてない
    477 : Name_Not - 2019/06/18(火) 14:20:46.74 ID:???.net (+27,+29,-3)
    つまり関係ない話にすり替えようとするな
    479 : Name_Not - 2019/06/18(火) 15:02:48.33 ID:???.net (+30,+29,-57)
    答えた気になっているようだが

    > documentがいつ
    →答えていない

    > どこで
    →答えていない

    > どんな風に作られるのか
    →答えていない

    > 技術的な仕様はあるのでしょうか?
    →答えていない

    > 仕様があれば、どこの仕様書のどの部分に書かれてるのか教えて下さい。
    →答えていない
    480 : Name_Not - 2019/06/18(火) 15:08:18.13 ID:???.net (+27,+25,-13)
    >>473
    documentが作られるのはドキュメントが出来た時に決まってるじゃん
    481 : Name_Not - 2019/06/18(火) 15:13:25.98 ID:???.net (-26,-29,-58)
    http://www.ecma-international.org/ecma-262/6.0/

    には document オブジェクトの定義自体が無い
    なので web ブラウザの document オブジェクト自体は web ブラウザの実装に依る

    あとは

    http://developer.mozilla.org/ja/docs/Web/API/Document

    とか、好きなもの・必要なものを読めば良い
    482 : Name_Not - 2019/06/18(火) 16:09:01.45 ID:???.net (-26,-24,-25)
    DOMはESの枠外なのにESの仕様にはない!(キリッ って当たり前じゃんw
    483 : Name_Not - 2019/06/18(火) 16:33:12.39 ID:???.net (-21,-30,-58)
    documentが必ず存在するってことは、
    jQueryの$(document).on(~)は
    body終了直前じゃなくても、$(function() {~})の
    中に入れなくても問題ないってことなのかな?
    484 : Name_Not - 2019/06/18(火) 17:10:40.82 ID:???.net (+30,+29,-9)
    >>483
    問題があるかどうかは一般的には言えない
    body終了直前に書くべきかどうかは色々な議論がある
    485 : Name_Not - 2019/06/18(火) 17:44:23.98 ID:???.net (+31,+29,-20)
    >>484
    じゃあ問題があるブラウザは今のところ
    見つかってないってことでいい?
    486 : Name_Not - 2019/06/18(火) 18:26:16.91 ID:???.net (-12,-10,-2)
    そもそもhead内でも動くでしょーが
    487 : Name_Not - 2019/06/18(火) 18:38:24.32 ID:???.net (+21,+23,-3)
    ブラウザにこだわっててちょっとウケるw
    488 : Name_Not - 2019/06/18(火) 19:21:18.08 ID:???.net (-22,-30,-136)
    >>479
    これでいいのかえ?

    > documentがいつ
    → DOMが出来る前

    > どこで
    → ブラウザなどの実行環境で

    > どんな風に作られるのか
    → Documentコンストラクタのインスタンスとして

    > 技術的な仕様はあるのでしょうか?
    http://dom.spec.whatwg.org/#dom-document-document

    > 仕様があれば、どこの仕様書のどの部分に書かれてるのか教えて下さい。
    http://dom.spec.whatwg.org/#dom-document-document
    489 : Name_Not - 2019/06/18(火) 20:24:59.72 ID:???.net (+17,+29,+0)
    うむ、ごくろう
    490 : Name_Not - 2019/06/18(火) 21:20:37.84 ID:???.net (-29,-29,-85)
    >>466-467
    ありがとうございます。
    perseIntは逆にMDNの説明を読んでも、なんだかよく分かりませんでした。
    全角数字を数値に変えるってこと?くらいでした。

    しかし、mathも記事が多過ぎで、truncと教えてもらっておいてよかったです!
    なぜ、floorで習ったのかは分からないですが、floorのこともわかった気がします。
    ありがとうございます!
    493 : Name_Not - 2019/06/18(火) 22:05:07.87 ID:???.net (+39,+29,-19)
    >>490
    四捨五入はfloorが正しいで。
    10引いてから四捨五入するのも
    四捨五入してから10引くのも
    同じだと思うやろ?
    494 : Name_Not - 2019/06/18(火) 22:10:29.61 ID:???.net (+31,+29,-1)
    >>493
    金融系の四捨五入なら正しいな
    495 : Name_Not - 2019/06/18(火) 22:15:55.09 ID:???.net (+27,+29,-15)
    「仕様通りでも俺の期待に反したからバグ!」
    496 : Name_Not - 2019/06/18(火) 22:26:14.83 ID:???.net (+41,+29,-12)
    >>493
    まてまて
    四捨五入ってのは
    0~4は切り捨て、5~9は切り上げ
    だから四捨五入なんじゃねえの?
    497 : Name_Not - 2019/06/18(火) 22:28:36.53 ID:???.net (+30,+29,-14)
    >>496
    なんのために四捨五入するかだろ
    半分を境目として、少ないならば、少ない方へ丸めるのが四捨五入だ
    498 : Name_Not - 2019/06/18(火) 22:32:49.29 ID:???.net (+22,+29,+0)
    税金計算とかで五捨六入とかあったな
    499 : Name_Not - 2019/06/18(火) 22:34:35.71 ID:???.net (+27,+29,+1)
    >>496
    意味はそれであってる
    500 : Name_Not - 2019/06/18(火) 22:40:50.60 ID:???.net (-24,-29,-10)
    >>497
    でもfloorって5より上でも切り捨てちゃうじゃん
    roundなら5未満だけど
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / JavaScript スレッド一覧へ
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

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


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