のくす牧場
コンテンツ
牧場内検索
カウンタ
総計:127,062,851人
昨日: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
    101 : Name_Not - 2014/07/06(日) 00:29:46.73 ID:???.net (+8,-29,-36)
    >>100
    あー、なるほど!処理順か!納得した納得できた

    どこで見つけたコードかというとyoutubeのhtml5playerのjavascript文
    読みにくくて仕方ないわ
    102 : Name_Not - 2014/07/06(日) 00:32:08.09 ID:???.net (+57,+29,-7)
    別にクソコードじゃないよ
    そういう書き方をしたい場合もある
    103 : 101 - 2014/07/06(日) 00:34:54.55 ID:???.net (+62,+29,-49)
    >>100
    お礼が欠けてました、ありがとうございます。いや助かった
    評価の順番といわれるまで何のことだか全然わからなかった、よく考え付くもんだほんと
    104 : Name_Not - 2014/07/06(日) 00:39:37.48 ID:???.net (+57,+29,-7)
    わざと読みにくくさせる
    つまり暗号化させたい時w
    105 : Name_Not - 2014/07/06(日) 00:46:51.19 ID:???.net (+57,+29,-51)
    Googleはショートコーディングの為に使うが、機械化してるので元々は難読なコードではない
    106 : Name_Not - 2014/07/06(日) 01:07:16.87 ID:???.net (+52,+29,-13)
    圧縮するとそういう風になるんだね
    107 : Name_Not - 2014/07/06(日) 01:14:44.64 ID:???.net (+3,-30,-112)
    function hoge(a) {
     console.log(a || 'ふが');
    }

    hoge('ほげ') // ほげ
    hoge(); // ふが

    みたいなやつも最初演算だと思ってわからなかった
    とくに”ふが”の部分が0とかだったりすると
    ますます何がわからないのかわからない状態に陥ってた
    108 : Name_Not - 2014/07/06(日) 01:48:56.35 ID:???.net (+61,+29,-2)
    perl使いが>>99みたいな書き方するよね。
    109 : Name_Not - 2014/07/06(日) 01:58:34.44 ID:???.net (-1,-29,-5)
    Perlだったら

    bar = func(c) if foo;

    こう書けば良い。もっと綺麗に書ける。
    110 : Name_Not - 2014/07/06(日) 03:07:41.71 ID:???.net (+19,-29,-177)
    複数のWebブラウザ(PCのほかにスマホ含む)でAjax的な動作をさせたい場合に
    どのようなアプローチが効率的ですか?
    とりあえず思いつく線だと
    1.ECMAネイティブで記述する
      最近はIE6みたいな俺実装ブラウザは減った気がする。実行速度的に有利?
    2.Ajaxフレームワークを用いる
      コーディングは楽になりそうだけど、フレームワーク内の見通しがよくない他
      コードが増加しデバッグやの手間も増える気がする
    111 : Name_Not - 2014/07/06(日) 03:24:21.87 ID:???.net (-1,-29,-7)
    PaaSでnode.js利用してSoket.IOを使う どや!
    112 : Name_Not - 2014/07/06(日) 04:01:01.44 ID:???.net (+55,+27,-44)
    どうせjqueryは使うんだからjqueryでやるのがいいんじゃない
    113 : Name_Not - 2014/07/06(日) 05:29:32.53 ID:???.net (+57,+29,-31)
    ネイティブで、そこそこの時間で書けるならそれが一番じゃねーの
    事前にどこまでをサーバ側にさせるか良く考えればあんまり問題おきないし
    114 : Name_Not - 2014/07/06(日) 07:36:21.22 ID:???.net (+10,-30,-45)
    >>110
    > 1.ECMAネイティブで記述する
    ECMAScript には XMLHttpRequest も ActiveXObject も存在しない

    3. XMLHttpRequest, ActiveXObject を用いる
    コーディング分岐はたいしたことはないのでこれで十分
    115 : Name_Not - 2014/07/06(日) 07:43:13.64 ID:???.net (+31,+8,-27)
    jquery使えば分岐もいらない
    116 : Name_Not - 2014/07/06(日) 08:40:20.93 ID:???.net (+57,+29,-38)
    ネイティブJavaScriptで書いてる人は独自ライブラリを持っているだろうから、ライブラリ云々は問題じゃない
    自分で使い慣れたものが一番いい
    勉強する気があるなら両方書いてみるといい
    117 : Name_Not - 2014/07/06(日) 11:08:28.54 ID:???.net (+57,+29,-22)
    沢山の人々に使われ、それだけ鍛えられているjqueryを使わず
    わざわざ自作ライブラリを使う意味がワカンネ
    118 : Name_Not - 2014/07/06(日) 11:25:27.15 ID:???.net (+67,+29,-10)
    >>99
    && を「ならば」に読み替えるというのもあるな
    119 : 110 - 2014/07/06(日) 12:23:32.65 ID:???.net (+4,-30,+0)
    レスありがとうございます
    過去に複数のWebブラウザに対応(ただしPC限定)したAjaxアプリ的なのを作ったことが
    あるのを思い出して今確認してみました。結構古い物ですが当時の実装は・・・
    Webブラウザの対応はFirefox3.0とIE8のIE6モードでXMLHttpRequestとaddEventListenerを
    自作ライブラリで抽象化していました。開発時にはPC版のChromeとSafari、IE6でも期待した
    動作をすることを確認していたはず・・・モバイル環境は未考慮でマウスUI前提です
    現行のWebブラウザに対応する場合はXMLHttpRequestの処置は必要みたいですが
    addEventListenerはそのまま書いて大丈夫そうですね

    >>114
    なるほど、そういうことなのですか。勉強になりました

    > jQuery
    こういうAjaxフレームワークって罠とかないのですかね?
    Webブラウザの差違が完全に吸収されて、かつ動作が安定している(せめてWin32API程度には)ので
    あれば使う価値があるかなと思います
    中途半端に動くようなトラブルはフレームワーク内部にまで立ち入ったデバッグが必要になって苦労する
    場合があるので勘弁願いたいです。昔、WinアプリでGUIフレームワークを使ったときに、この手のトラブルで
    だいぶ苦労した記憶があるので、ネイティブで書いた方が最終的に楽なのではという気持ちはあります
    120 : Name_Not - 2014/07/06(日) 13:54:58.91 ID:???.net (+63,+30,-189)
    > こういうAjaxフレームワークって罠とかないのですかね?

    自分で作ったものには、罠があるよ。
    なにせ全部のブラウザで試してないだろう?
    特定のブラウザで動かないことは多いだろう。

    それに自分で作ったものは、中途半端でトラブルで
    ソースコード内部にまで立ち入ってデバッグしなければならない。
    自分で作ってるから他の誰もデバッグしてくれないしな。

    そしてネイティブで書くと、各ブラウザで発生するトラブルを
    全部一人で解決していかなければならない。

    そしてひとしきり解決して思うことは、
    今自分はjQueryの劣化版を作ってるだけなんだってこと。
    121 : Name_Not - 2014/07/06(日) 14:33:08.08 ID:???.net (+57,+29,-15)
    jQuery妄信もそれはそれでどうかと思うがな
    122 : Name_Not - 2014/07/06(日) 15:06:58.47 ID:???.net (+14,-8,-27)
    jqueryはデカイからな
    123 : Name_Not - 2014/07/06(日) 15:19:14.76 ID:???.net (+57,+29,-54)
    jQueryを使おうが何を使おうがトラブルが起きた時に解決しなきゃいけないのは結局自分じゃね?w
    125 : Name_Not - 2014/07/06(日) 18:15:25.39 ID:???.net (+0,-30,-235)
    >>124
    ans + rnd は、

    変数 ans の値と変数 rnd の値に対し、 + 演算子による演算を行う、と解釈される
    (「変数」と書いたがプロパティの場合もあり得る。が、ここでは本質的でないので説明は省く)
    ここでは ans という名前の変数は宣言されていないのでエラーになる

    ans という名前と、 rnd の値に対し、文字列の連結演算を行うわけではない
    そのようにしたい場合は "ans" + rnd と書かなければならない

    次に
    document.write("ans" + rnd);
    に変えたとしても、 "ans" + rnd の結果は、変数名ではなく、文字列と解釈されるので
    "ans0" "ans1" 等々が単に文字列として出力されることになる
    結果の文字列に「対応する」値を出力させたいなら、連想配列を利用する必要がある

    var answers = {
    ans0: "りんご",
    ans1: "みかん"
    ans2: "バナナ"
    }
    document.write( answers["ans" + rnd] );
    126 : Name_Not - 2014/07/06(日) 18:48:59.39 ID:???.net (-2,-30,-21)
    普通に考えたらこうやるべきだけどな。

    var answers = ["りんご", "みかん", "バナナ"];
    document.write( answers[rnd] );
    127 : Name_Not - 2014/07/06(日) 21:03:09.71 ID:???.net (+9,-29,-48)
    >>125-126
    ありがとうございます。
    「document.write(ans0); 」と直接指定したときには、「りんご」と直接表示されたので、なんで出ないのか困っていました。
    もう一つお聞きしたいのですが、「document.write (ans[rnd])」と書いてはなぜダメなのでしょうか?
    128 : Please C - 2014/07/06(日) 23:05:05.32 ID:???.net (-1,-29,-34)
    ソレ配列じゃん
    変数と配列の違いでググれ
    129 : Name_Not - 2014/07/06(日) 23:10:26.17 ID:???.net (+4,-30,-121)
    >>127
    ans[rnd] は ans0 等ではなく ans[0] 等に評価される
    これは ans という名前のオブジェクト変数/配列変数の 0 という名前/インデックスのメンバを表す
    しかし ans という名前の変数は宣言されていないのでエラーになる

    コードというのはなるべく簡単に表記できるように
    ( ans[0] を「ans という名前の…」などと書かなくとも済むように)
    背景の仕組みは可能な限り省略され、
    冗長な部分は可能な限り削ぎ落として
    記される、記せるようになっているのが常だ

    コードの表層ばかり見ていてはだめで、背景の仕組みをもっと理解する必要がある
    130 : Name_Not - 2014/07/06(日) 23:11:56.99 ID:???.net (+3,-29,-31)
    jqueryのmouseleaveハンドラで要素を消しているのですが、
    稀に何かのタイミングでその要素が残ることがあります
    しかし条件が分からないのです
    mouseleaveが発生しない条件って何でしょう?
    131 : Name_Not - 2014/07/06(日) 23:58:18.66 ID:???.net (+60,+27,-54)
    mouseout系は、その一回のイベントを受け損ねたら
    ずっと残り続けてしまうので、
    脆弱だとは言えると思います
    とはいえjqueryのmouseleaveはかなりの強固なので、
    信用していたのですが・・
    132 : Name_Not - 2014/07/07(月) 00:22:39.44 ID:???.net (+183,+29,-10)
    >>98
    遅レスですがここの質問がある程度わかりオライリーをある程度読めれば普通の会社くらいは行けますか?
    133 : Name_Not - 2014/07/07(月) 00:49:28.97 ID:???.net (+57,+29,-6)
    バナナが絶対選ばれないのは誰も指摘しないのか
    134 : Name_Not - 2014/07/07(月) 01:24:58.28 ID:???.net (+52,+29,+0)
    だってバナナだし
    135 : Name_Not - 2014/07/07(月) 01:29:35.03 ID:???.net (+84,-28,-52)
    >>132
    はじめてのJavaScript、秀和システム
    掌田津耶乃(しょうだ つやの)、2013

    オブジェクト指向、DOMについて、
    各100ページの説明があるので、おすすめ
    136 : Name_Not - 2014/07/07(月) 01:41:34.69 ID:???.net (+63,+29,-13)
    >>135
    それ前にこのスレに書かれて叩かれてた本やん
    遠回しな叩きか?
    137 : Name_Not - 2014/07/07(月) 04:09:42.11 ID:???.net (+78,+29,-48)
    >>132
    何が普通でどういうレベルの募集に対応したいのか知らんが
    設計済みならコーディングは一通り出来ます、って人が多いんじゃないかな、ライバルは

    個人的には「自分、英語ダメなんでwww」っていうのが困る
    138 : Name_Not - 2014/07/07(月) 05:23:01.23 ID:???.net (+57,+29,-28)
    プロになりたいならプロが作る程度のものを作れるようになればいい
    どのくらいの知識があれば会社に入れるかとか、そんなこと考える必要ない
    139 : Name_Not - 2014/07/07(月) 12:15:52.01 ID:???.net (+77,+29,-17)
    >>132
    twitterでjavascriptのネタをつぶやいたり批判したりできるぐらいの実力が無いと大手は無理ですが
    底辺の会社ならいけますね
    140 : Name_Not - 2014/07/07(月) 15:33:04.81 ID:???.net (+31,-29,-9)
    ブール値の変数名はboolとbooleanどっちがいいですか?
    141 : Name_Not - 2014/07/07(月) 19:01:54.42 ID:???.net (+57,+29,-19)
    自分では何も考える気のない丸投げ質問ばかりだな
    142 : Name_Not - 2014/07/07(月) 19:30:45.30 ID:???.net (+61,+29,-5)
    >>140
    俺だったら値のタイプじゃなくて値を何に使うかで名前つけるけど
    143 : Name_Not - 2014/07/07(月) 21:33:57.59 ID:???.net (+107,+29,-58)
    >>135
    俺もこれ読む価値あると思う。
    object、prototypeなどの概念については詳しい。
    学習始めて2冊めくらいに読むにはいいんじゃないか。

    そのぶんjquery等の即使える技術については言及が少ないが。
    145 : Name_Not - 2014/07/07(月) 22:59:21.56 ID:???.net (+87,+30,-249)
    >>132
    ある程度の範囲が曖昧すぎて回答できない
    オライリー本も何の本か書いてないので答えられない

    最近、出ている質問には全て答えられないとやってけないと思う
    DOM, ECMAScript, XMLHttpRequest 等の代表的なAPIのマスターは必要条件
    書籍は『JavaScript 第6版』を熟読
    まず、書籍の内容が理解できる程度に習得してから徐々に慣らしていく
    自分でイメージしたプログラムを他人のコードをコピペせずに作れるようになれば一人前

    jQuery等のライブラリは使うだけじゃなく、jQueryコードがどのように動いているか、コードリーディングで把握できる力を身につける
    ブラックボックス化したコード(読む力がないから読まない)に依存することほど危険な事はない
    146 : Name_Not - 2014/07/07(月) 23:17:38.02 ID:???.net (+57,+29,-20)
    仕事で必要になったときすぐ勉強して覚えられる人なら普通の会社でやってけるよ
    147 : Name_Not - 2014/07/07(月) 23:29:56.87 ID:???.net (+72,+29,-1)
    >>143
    著者さん宣伝ご苦労様です
    148 : Name_Not - 2014/07/07(月) 23:37:11.13 ID:???.net (+66,+29,-23)
    >>135
    本の紹介なんて望んでない展開なのに唐突でわろた
    149 : Name_Not - 2014/07/08(火) 00:56:10.54 ID:???.net (+9,-30,-65)
    セッターメソッドの場合は型を変数名にするのは当然だと思いますが?
    setHoge(str)
    とするのなら
    setHoge(bool)
    とするのは自然なことです
    したがってboolかbooleanかは妥当な疑問だと思いますが?
    150 : Name_Not - 2014/07/08(火) 00:57:24.02 ID:???.net (-1,-29,-11)
    文字列の変数名をstringでなくstrにするように
    booleanもboolにするのがいいですね
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / JavaScript スレッド一覧へ
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

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


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