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

    私的良スレ書庫

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

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

    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 - 2016/02/14(日) 14:10:53.36 ID:???.net (+121,+29,-69)
    >>349
    遅いかどうかじゃなくて、実用レベルかどうかで考えろ。

    たとえ全要素を検索したって、全要素の数がたかだか数十個しか
    なければ、ループ数十回程度にしかならん。

    jQueryなどのライブラリは、速度よりも重要な開発コストを
    低くするために導入するわけだから、それと比較すればいいんだよ。

    単細胞な速度馬鹿は相手にすんな。
    352 : Name_Not - 2016/02/14(日) 14:13:13.32 ID:???.net (+11,-29,-34)
    >>350
    getElementsByClassName(を使っているjQuery含む)は全探索じゃないよw
    353 : Name_Not - 2016/02/14(日) 14:19:10.66 ID:???.net (+0,-29,-20)
    >>352
    MozillaもChromeもCollectionすべてトラバースしてんぞ
    何をほざいてるんだお前は
    354 : Name_Not - 2016/02/14(日) 14:38:05.37 ID:???.net (+64,+29,-39)
    それどころかIDも全てトラバースしてる。
    IDは一個しか存在してはいけない事になってるが、
    HTMLには複数書くことも出来てしまうからね。
    355 : Name_Not - 2016/02/14(日) 14:47:27.84 ID:???.net (+12,-29,-89)
    >>354
    してねえよ本当に知ったかぶりばかりだな

    >>349
    class以外でも基本的に全て同じと思われるが、
    Idだけはパース時にキャッシュされた木から取るようで、
    実測はしていないが恐らくgetElementByIdだけ別格に速い

    ちなみにServoはツリーではなく、Id,tag,class各値のリストをキャッシュしトラバースしていた
    なのでtagやclassは旧ブラウザよりは速いはずだが、
    Idもリストになっているため、getElementByIdは旧ブラウザの方が速いだろう
    356 : Name_Not - 2016/02/14(日) 14:50:48.13 ID:???.net (+57,+29,+0)
    つまり結論としては面倒臭がらずにId使ったほうが良い
    357 : Name_Not - 2016/02/14(日) 15:04:27.13 ID:???.net (+6,-30,-75)
    >>343
    jQのことは正直どうでもいいんですが
    ただgetElementsByClassName(あとgetElementsByTagNameとか)はあまり多用しないほうがいいのか、それとも問題ないのかと

    自分の知ってる範囲内だとたとえば、上の人も書いてるけどgetElementByIdは安定してすごく早い
    358 : Name_Not - 2016/02/14(日) 15:11:44.32 ID:???.net (+36,-30,-67)
    getElementsByClassName
    getElementsByTagName
    getElementsByName
    この辺は速度みんな同じ?getElementsByNameはよく使うんだけど
    359 : Name_Not - 2016/02/14(日) 15:38:16.41 ID:???.net (+36,-30,-155)
    jQueryの$('.class')は内部的にdocument.getElementsByClassNameを利用していて、動作速度は全く問題ない。

    document.getElementByIdが高速だからDOMにIDを振ってそれを使用しろなんて言っているやつは、プログラムの良し悪しを動作速度でしか判断できないレベルの人間なので、信用してはいけない。

    javascriptのようなスクリプト言語は、動作速度よりも保守コストを優先させた方が圧倒的に生産性が高い。
    360 : Name_Not - 2016/02/14(日) 15:41:15.04 ID:???.net (+70,+29,-8)
    >>358
    基本的に同じだろうね
    ただ>>351の言う通り要素数が少ないなら大した差は出ないと思うぞ
    361 : Name_Not - 2016/02/14(日) 15:43:39.23 ID:???.net (+62,+29,-24)
    >>359
    動作速度も品質の一つ
    ましてや速度を求めてる質問であれば、そう答えるのが当たり前
    柔軟な考えを持たず、偏った考えの人間こそ信用してはいけない
    362 : Name_Not - 2016/02/14(日) 15:47:51.46 ID:???.net (+91,+29,-65)
    > 動作速度も品質の一つ

    1ナノ秒速くなりましたって
    いっても殆どの場合嬉しくないよね?

    開発コストを下げるのも品質の一つ。
    どっちを取るか比較して考えろって言ってるんだよ。
    363 : Name_Not - 2016/02/14(日) 15:49:32.12 ID:???.net (+16,-11,-31)
    速度中は実時間じゃなくて倍率で物事を考えるから注意しろよw
    0.1ナノ秒が1ナノ秒になった、10倍高速化した!とか言い出すからな。
    364 : Name_Not - 2016/02/14(日) 16:11:07.44 ID:???.net (+106,+29,-26)
    >>362-363
    nsてwまともに計測もしたこと無いんだなw
    まあ失敗した経験がなけりゃわからんわな
    がんばれ
    365 : Name_Not - 2016/02/14(日) 16:22:11.24 ID:???.net (+81,+29,-47)
    >>364
    http://tokkono.cute.coocan.jp/blog/slow/index.php/xhtmlcss/jquery-alternative-tips/

    まぁ、この辺りの結果 を見れば、Android の 2.3 とか 4.0 とかでも、1回当たりの実行時間は
    ナノ秒のオーダーなので、繰り返しが少なければ問題にはならない、という程度でしょう。
    366 : Name_Not - 2016/02/14(日) 16:27:03.31 ID:???.net (+8,-29,-36)
    >>365
    えーとギャグで言ってるのかな?
    それの数十nsの結果は全部getElementsById実装由来だぞ?
    367 : Name_Not - 2016/02/14(日) 16:27:45.01 ID:???.net (-2,-30,-49)
    > document.getElementsByClassNameを利用していて、動作速度は全く問題ない。
    で、document.getElementsByClassNameは早いの遅いの?
    368 : Name_Not - 2016/02/14(日) 16:30:15.03 ID:???.net (+64,+29,-13)
    例えば要素が1000個あるとして
    全走査にどれくらいかかるの?
    370 : Name_Not - 2016/02/14(日) 16:35:38.31 ID:???.net (-1,-29,-41)
    同じ条件で俺のスマホ並のクソPCだと
    getElementsByClasName一回0.1ms程度かかってるなw
    お粗末さまでした
    371 : Name_Not - 2016/02/14(日) 16:37:59.96 ID:???.net (+62,+29,-63)
    getElementsByClassName一回ってまた適当だな。
    まともな計測すらできんのか?

    全要素数がどれくらいで、該当セレクタが何要素あるかで
    大きく変わるのわかるだろ。それも書かないで
    数値だけ言っても何の参考にもならない。

    あとマシンスペックもちゃんと書け
    372 : Name_Not - 2016/02/14(日) 16:38:46.55 ID:???.net (+79,+20,-46)
    結局JQueryは使わない方がいいの?どうなの?
    373 : Name_Not - 2016/02/14(日) 16:41:13.84 ID:???.net (+62,+23,-25)
    >>372
    JavaScriptすら使わないほうがいい。
    C言語で作るのが一番。

    ただし開発コストを下げたいならjQueryを使ったほうがいい。
    374 : Name_Not - 2016/02/14(日) 16:42:16.50 ID:???.net (+17,-30,-81)
    >>368
    全ノード1000程度(google)で一回あたり10usだった
    回さない限りgetElementsByClassNameは1msはまずかからないと見ていい
    そのかわりquerySelectorAllは30倍ぐらい遅い

    つまりjQueryじゃないなら気にするな
    375 : Name_Not - 2016/02/14(日) 16:44:48.56 ID:???.net (+46,-25,-19)
    >>374
    jQuery使って10usなのか。
    その程度なら問題なさそうだな。
    376 : Name_Not - 2016/02/14(日) 16:47:59.55 ID:???.net (+63,+29,-38)
    >>375
    お前はいい加減にしろ

    大雑把に言って1サイクル(1命令ですら無い)が1nsぐらいだぞ?
    nsの差しか出ないという感覚が経験のなさを露呈してるのに
    これ以上生き恥を晒したいのか?
    377 : Name_Not - 2016/02/14(日) 16:49:37.60 ID:???.net (+28,-25,-2)
    10usって言ったの俺じゃねーしw
    378 : Name_Not - 2016/02/14(日) 16:50:10.97 ID:???.net (+55,+23,-2)
    >>377
    nsと言ったのはお前だろ
    379 : Name_Not - 2016/02/14(日) 16:52:56.26 ID:???.net (+44,-23,-5)
    >>375のどこにnsって書いてあるんだい?w
    380 : Name_Not - 2016/02/14(日) 16:53:46.82 ID:???.net (+63,+29,-3)
    >>379
    やれやれ…一生そうやっとれ
    381 : Name_Not - 2016/02/14(日) 16:56:29.30 ID:???.net (+8,-19,-35)
    ミリとかナノとかマイクロとかよくわからんから
    全部秒で表現しようぜ!

    jQueryだとクラス名による選択は
    1回あたり0.00001秒ぐらいかね?
    382 : Name_Not - 2016/02/14(日) 17:18:18.26 ID:???.net (+57,+29,-7)
    実行速度なんてスペック・リソース消費状況によってコロコロ変わるのをわかっててやってるよね
    383 : Name_Not - 2016/02/14(日) 17:21:09.42 ID:???.net (+55,+27,-15)
    唐突なjQ批判->jQ批判を論破、したつもりが
    根っこの方の話になっちゃったもんだから自演で混ぜっ返して流します
    384 : Name_Not - 2016/02/14(日) 17:31:57.71 ID:???.net (+32,-29,-17)
    結論
    JSは使うな
    HTMLとCSSだけで作れ
    385 : Name_Not - 2016/02/14(日) 18:25:09.96 ID:???.net (+62,+29,-38)
    >>384
    そのうちサーバサイドレンダリングが一番とかになるんかな。
    ゲームですらクラウド上で動かそうとしてるこんな世の中だし
    386 : Name_Not - 2016/02/14(日) 18:29:44.73 ID:???.net (+42,+24,+0)
    無いわ
    387 : Name_Not - 2016/02/15(月) 03:47:55.14 ID:???.net (+25,+30,-58)
    jQはカメラで例えたらバカチョンカメラ。
    簡単に使えるように開発されたものだしな。
    基礎のjs記述を知らん三下でもスラスラ書ける。
    388 : Name_Not - 2016/02/15(月) 05:41:44.20 ID:???.net (+3,-30,-68)
    JavaScript関連技術の認識としてあっていますか?

    jQuery→JavaScriptのラッパー
    AngularJS→クライアントサイドPHPのようなもの
    CoffeeScript,TypeScript→コンパイルしたらJavaScriptのコードを吐く別の言語
    node.js→ビルトインウェブサーバつきサーバサイドJavaScript
    389 : Name_Not - 2016/02/15(月) 12:59:51.04 ID:???.net (-1,-29,-26)
    angularjsはなんか違う。

    phpのようなものは、jsだとejsとかjadeに対応する。
    390 : Name_Not - 2016/02/15(月) 21:35:48.96 ID:EJrtr7Dm.net (-4,-30,-110)
    var obj = {
    name: 'hoge',
    say: function(){
    console.log(this.name);
    }
    }

    setTimeout(function(){ obj.say(); },1000); // 出力 hoge
    setTimeout(obj.say,1000); // 出力 undefined

    なんで後者だとundefinedになるの?
    391 : Name_Not - 2016/02/15(月) 22:01:43.19 ID:???.net (+6,-29,-17)
    GetValueされThis値を保持するReferenceの殻が向かれた中身が渡されるから
    392 : Name_Not - 2016/02/15(月) 23:52:04.47 ID:???.net (-1,-29,-48)
    >>390
    sayが静的関数として呼び出されてthisがグローバルオブジェクトになるから
    Strict ModeならTypeError
    393 : Name_Not - 2016/02/16(火) 00:29:22.66 ID:???.net (+129,+30,-185)
    ネットで拾ったjQueryの添付説明書を読みながら動かしてきたのですが、
    満足のいく物が中々見つからず、いっそ自分で作れるようになろうと、
    JavaScriptの勉強を始めました。

    現状知人が大学の授業で使っていた『独習JavaScript』を貰えたので、
    それを読み、なんとなくJavaScriptの仕組みがわかり、jQueryを用いた、
    タグの挿入やCSSの変更などの簡単な物は自分で作れるようになりました。

    しかし今ひとつ実用性がなく、知識としてわかっているのですが(実際はわかっていないからかもですが)、
    JavaScriptの具体的な利用法がわからず、結局思うようなプログラムが作れません。

    当面の目標としては、オリジナルのsliderやlightboxみたいな物を作りたいと考えています。

    その為に必要なステップ、参考になる書籍等教えて頂ければ幸いです。
    394 : Name_Not - 2016/02/16(火) 01:02:15.28 ID:???.net (+57,+29,-39)
    おまえの目の前にある箱でAmazonとかヤフー検索してf12押せば有用なつかいかたがかいてあるぞ
    395 : Name_Not - 2016/02/16(火) 01:53:25.52 ID:???.net (+76,+29,-58)
    >>393
    実現したい仕様が頭の中にあるんだろ?
    でも上手くいかないと

    とりあえず書いたコード晒してみたら?
    そしたら君に現在地をわかってもらいやすいし
    アドバイスや次のステップのヒントが得られるかもよ
    396 : Name_Not - 2016/02/16(火) 03:07:42.40 ID:???.net (+60,+29,-32)
    >>390-392
    JSのthisは、文脈でコロコロと意味合いが変わる、悪名高いthis

    >>393
    山田祥寛(よしひろ)、翔泳社
    10日でおぼえる jQuery 入門教室 第2版
    397 : Name_Not - 2016/02/16(火) 03:26:41.45 ID:???.net (+3,-29,-137)
    まーた、山田祥寛の宣伝か
    いらんよこんなクソ本

    jQueryの一番のおすすめ本
    他の本はたいていjQuery使ってみました。で終わりだけど
    この本はjQueryの正しい使い方、考え方を学ぶことが出来る。

    コアjQuery+プラグイン/jQuery UI 開発実践技法 (Programmer's SELECTION)
    http://www.amazon.co.jp/dp/4798124281
    398 : Name_Not - 2016/02/16(火) 03:29:47.57 ID:???.net (+63,+30,-125)
    http://esepin.net/log/213
    技術書を多数執筆している山田祥寛さんという方がいます
    自分もこの方の著書は何度か買ったことがありますが、内容としては大体が初心者向けで分かりやすく書かれており広く浅くという印象です

    高すぎる評価

    ただ、Amazonではこの方(WINGSプロジェクトも)の著書は高すぎじゃないかというくらい高評価です(著書の内容が良くないとは言いませんが)
    更にこの方の著書のレビュアーをよく見ると少しヘンです
    さらっと見ただけで以下の共通のレビュアーが見つかります。大体が★5を付けています

    おそらくは献本を受けた方のレビューじゃないかと思うのですが、ここまで露骨だとサクラとかステマといわれても仕方がありません
    399 : Name_Not - 2016/02/16(火) 04:28:17.84 ID:???.net (+40,+5,-42)
    thisは別に悪名高くもないし特殊でもない
    Pythonのselfのようなもので第0番目の引数のようなもの
    とは言え無秩序ではなく、thisはレシーバを返すという一定のルールがある
    400 : Name_Not - 2016/02/16(火) 04:46:47.35 ID:???.net (+57,+29,-3)
    本選びに困ったときにゃオライリーでよかろう
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / JavaScript スレッド一覧へ
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

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


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