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

    私的良スレ書庫

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

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

    JavaScript スレッド一覧へ / JavaScript とは? / 携帯版 / dat(gz)で取得 / トップメニュー
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。
    レスフィルター : (試験中)
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitter
    451 : Name_Not - 2019/11/14(木) 04:17:56.84 ID:???.net (+55,-30,-159)
    jQueryと違ってというが、元の処理を無効にする場合
    jQueryの場合でもページのなるべく最初の方で
    $(document).on('click, 'A', ~
    みたいにするってわかってるか?

    $(function() {
    この中に書いたりしないぞ
    })

    documentはJavaScriptが読み込まれるタイミングでは必ずあるので
    DOMの読み込み完了を待つ必要はないんだよ。

    だから$(document) にイベントを割り当てる場合、
    ページの最初でやって問題ない。

    その前提の話をしてるか?
    452 : Name_Not - 2019/11/14(木) 08:52:00.49 ID:???.net (+67,+29,-91)
    >>493
    当然、バブリング、キャプチャリングフェーズのどこで発動するかによって、タイミングが異なる
    だが、e.preventDefaultでイベントハンドラ実行を停止させる使い方は必要なプログラムまで停止させるリスクがあるのでやらない
    フォームパリデーションでsubmit抑止など、デフォルトアクションを停止しなければならない時ぐらいだが、それで迷うことはあるまい
    453 : Name_Not - 2019/11/14(木) 09:03:18.14 ID:???.net (+7,+29,-13)
    > 必要なプログラムまで停止させるリスクが

    んなもん、セレクタで絞り込むだけやん
    454 : Name_Not - 2019/11/14(木) 09:06:41.86 ID:???.net (+3,-30,-124)
    jQueryだと

    $(document).on('click, function(e) {
     e.preventDefault();
    });

    で全部元の処理が無効になるが、これを特定のクラスが
    ついたものにするなら

    $(document).on('click, '.klass', function(e) {

    こうするだけ。

    たったこれだけが面倒だなんて誰も思わんだろ
    455 : Name_Not - 2019/11/14(木) 12:45:11.25 ID:???.net (+57,+29,-11)
    イベントハンドラ関数内のどこに書くかを聞いてるのだと理解したが
    非同期処理しなければreturn前のどこに書いても一緒
    当然非同期処理内やawaitより後はだめ
    456 : Name_Not - 2019/11/14(木) 18:55:08.63 ID:???.net (+121,+29,-59)
    >>495
    例外や考慮すべき事柄が多い
    高度な構造はそもそもjQueryで扱うのに適さない
    jQueryは適当にざっくり処理するためのもの
    457 : Name_Not - 2019/11/14(木) 19:31:02.43 ID:???.net (+52,-30,-129)
    EventTarget.addEventListener()の第3引数のpassiveプロパティで分かりそうなもんだけどね
    trueかfalseかで、event.preventDefault()の可能性の為に規定の処理を待機するかが決定されるってことはそういうことなんだなと
    458 : Name_Not - 2019/11/15(金) 07:13:03.31 ID:???.net (+111,+29,-17)
    これからは第三引数はオブジェクトを渡していくべき
    459 : Name_Not - 2019/11/15(金) 22:27:02.45 ID:???.net (+15,-30,-268)
    >>443
    このようにします。
    宣言が繰り返されることはありません。

    let arr = [1,2,3,4,5];

    arr.forEach((({
    足す1 = n => n + 1,
    掛ける2 = n => n * 2,
    定数 = 42,
    } = {}) => (value, index, array) => {
    console.log(`配列${JSON.stringify(array)}の${index}番目の要素${value}に1を足して2を掛けて定数42を足した数は${掛ける2(足す1(value)) + 定数}です。`);
    })());

    出力:
    配列[1,2,3,4,5]の0番目の要素1に1を足して2を掛けて定数42を足した数は46です。
    配列[1,2,3,4,5]の1番目の要素2に1を足して2を掛けて定数42を足した数は48です。
    配列[1,2,3,4,5]の2番目の要素3に1を足して2を掛けて定数42を足した数は50です。
    配列[1,2,3,4,5]の3番目の要素4に1を足して2を掛けて定数42を足した数は52です。
    配列[1,2,3,4,5]の4番目の要素5に1を足して2を掛けて定数42を足した数は54です。
    460 : Name_Not - 2019/11/16(土) 07:12:15.27 ID:???.net (+55,+29,-20)
    いい加減何万人月もかけて作られてこれでもかとお膳立てしてくれているブラウザ上で
    細々したことに悩む馬鹿らしさに気がついたほうが良い
    461 : Name_Not - 2019/11/16(土) 10:07:05.84 ID:???.net (+57,+29,-4)
    要約:俺の分からないことは取るに足らないこと
    462 : Name_Not - 2019/11/16(土) 14:16:24.48 ID:???.net (+150,+29,-7)
    ブラウザ毎に精度違う可能性があるなら気に掛ける意味あるじゃん
    何いってるのこの人
    463 : Name_Not - 2019/11/16(土) 15:02:58.67 ID:???.net (-1,-29,-5)
    ubntuってもとからnode入ってるんだな
    システムで使ってるの?
    464 : Name_Not - 2019/11/16(土) 16:18:27.10 ID:???.net (+3,-30,-170)
    >>502
    const厨だからクロージャ使うのでもこっちのほうがいいですわ
    arr.forEach((() => {
    const 足す1 = n => n + 1;
    const 掛ける2 = n => n * 2;
    const 定数 = 42;
    return (value, index, array) => {
    console.log(`配列${JSON.stringify(array)}の${index}番目の要素${value}に1を足して2を掛けて定数42を足した数は${掛ける2(足す1(value)) + 定数}です。`);
    };
    })());
    465 : Name_Not - 2019/11/16(土) 18:44:23.52 ID:???.net (+101,+29,-12)
    >>505
    ここは実際に困ってる問題を解決するスレであって
    心配性構ってちゃんの遊び場ではないから
    466 : Name_Not - 2019/11/16(土) 19:12:56.85 ID:???.net (+57,+29,-8)
    要約:俺の認めない話題は取るに足らないこと
    467 : Name_Not - 2019/11/16(土) 19:51:19.83 ID:???.net (+41,-30,-60)
    <img>要素のonclick使うよりadEventLithnerの"click"使ったほうがいいの?
    どっちも同じですか?
    468 : Name_Not - 2019/11/16(土) 19:58:04.29 ID:???.net (+39,-30,-78)
    ↓のようにif文の条件に当てはまってreturnするケースの場合
    リサイズイベントが走りませんでした。
    ロードの際に全部読み込むので、リサイズイベントは発火するものだと
    考えていたのですが、実際は読み込むときも条件次第で到達できなければ
    イベント登録されないということなのでしょうか。

    var test = function() {
    if (...) {
    return;
    }
    window.addEventListener('resize', function() {
    ...
    });
    };
    469 : Name_Not - 2019/11/16(土) 20:06:52.01 ID:???.net (+52,+29,-1)
    なんで発火すると思ったか詳しく
    470 : Name_Not - 2019/11/16(土) 20:24:44.77 ID:???.net (+104,+30,-28)
    >>512
    よくよく考えたら当たり前っぽい気がしてきました。
    冷静に考えるとイベントリスナだけ特別ってなわけないですもんね。
    イベントリスナまでたどり着けてはじめて登録されるってことなんですね。

    上手くいかない箇所を探していたところ、まさかのまさかだったので
    勢いで質問してしまいました。
    471 : Name_Not - 2019/11/16(土) 20:58:44.65 ID:???.net (+46,+28,-2)
    ええんやで
    472 : Name_Not - 2019/11/16(土) 22:55:18.99 ID:UdZhIOrZ.net (-14,-30,-126)
    public class Hero
    String name;
    int hp;
    public Hero(String name,int hp){
    this.name=name;
    this.hp=hp;
    }
    public void heal(int sec){
    this.hp=this.hp+sec;
    }
    public class Main{
    public static void main(String args[]);
    Hero h1= new Hero("zako",10);
    Hero h2= new Hero("gomi",20);
    h1.heal(2);
    h2.heal(3);
    Hero h3= h1;
    h3.heal(7);
    h1=h2;
    h1.heal(11);
    }
    質問です 上記のプログラムを実行したらzakoとgomiのhpはいくらになりますか?(自分の解釈はzakoが34 gomiが 23になりました)
    473 : Name_Not - 2019/11/16(土) 23:44:52.83 ID:???.net (+52,+29,-2)
    あってるよ
    君は君のままでいい
    475 : Name_Not - 2019/11/17(日) 00:54:36.83 ID:???.net (+74,+30,+0)
    476 : Name_Not - 2019/11/17(日) 13:18:53.29 ID:???.net (+55,+29,-20)
    こいつキチガイか?
    日本語が分からないから5chなんかに来るんだろうが
    477 : Name_Not - 2019/11/17(日) 21:13:04.69 ID:???.net (+105,+27,-23)
    zakoなのはjavascriptスレでjavaの質問をしてしまった自分だったと言う話。
    自分が書いているプログラミング言語が何なのかも把握していないgomi
    478 : Name_Not - 2019/11/17(日) 22:56:28.14 ID:???.net (-1,-29,-16)
    「スッキリわかる Java入門 第2版、2014」の話は、
    プログラム板のJava スレへ書き込んでください

    Java・JavaScript は、異なる言語です!
    479 : Name_Not - 2019/11/18(月) 02:26:04 ID:???.net (+41,+14,-12)
    全部ネットスケープが悪い
    480 : Name_Not - 2019/11/19(火) 02:25:17 ID:???.net (+89,+29,-17)
    いい加減、jQueryは不滅ってことでいいですかね?
    481 : Name_Not - 2019/11/19(火) 07:46:23.50 ID:???.net (+31,-29,+0)
    いい加減、jQuey信者がうざすぎるんですが
    482 : Name_Not - 2019/11/21(木) 22:10:19.13 ID:???.net (+3,-29,-124)
    何度もすみません。
    所作について質問です。

    load・resize・scroll などのイベントリスナ内で、それぞれ同じ変数を用いる場合、
    親スコープで変数を宣言して、それぞれのイベントリスナ内では値を格納するだけなのか、
    それぞれのイベントリスナで変数を宣言をしつつ値を格納するべきなのか、
    どちらが普通なのでしょうか?

    イベントリスナ内で呼び出した関数の返り値を代入する変数を想定しています。
    変数名は一緒です。
    よろしくお願いします。
    483 : Name_Not - 2019/11/22(金) 02:51:13 ID:???.net (+57,+29,-12)
    お前のその言葉での説明でわかるわけ無いだろ
    コードかけや
    484 : Name_Not - 2019/11/22(金) 19:59:39.77 ID:???.net (-1,-29,-23)
    load・resize・scroll で、共通の状態変数なら、関数の外で保持する
    485 : Name_Not - 2019/11/22(金) 22:18:56.04 ID:???.net (+62,+29,-37)
    >>525
    JavaScriptは言語で書き方や構造を縛るような作りにはなっていないし
    そう言ったことを主張するような中心的なコミュニティも存在しない
    つまり「普通」などない
    487 : Name_Not - 2019/11/23(土) 12:20:02.54 ID:???.net (+58,+30,-52)
    ちっぽけな事に拘るなとは言わんが
    ここに居る数人に聞くよりも100のコードを読み書きして
    自分で研究した方がよっぽど良い結果を得られるとは思わないか?
    488 : Name_Not - 2019/11/23(土) 12:31:00.82 ID:???.net (+57,+29,-9)
    変数は関数内に閉じ込めてカプセル化したほうがモジュール性がたかまるのでいいい
    489 : Name_Not - 2019/11/23(土) 12:41:04.82 ID:???.net (+59,-29,-27)
    文書内を全文検索して特定の単語の位置を取得して
    所定のボタンをおしたら順次移動(Ctrl+Fみたいなの)
    みたいなのってJSでどうやればできる?
    490 : Name_Not - 2019/11/23(土) 12:52:29.74 ID:???.net (+57,+29,-27)
    いまどきのPCは性能がいいので
    よっぽどでかいデータを大量に出し入れするんじゃなけりゃ
    そんなの気にしないでいい
    491 : Name_Not - 2019/11/23(土) 14:53:17.82 ID:???.net (+14,-30,-187)
    >>526
    失礼しました。
    各イベント内で同じ関数を実行し、その返り値として真偽値を受け取りたいのですが
    値を代入する変数をどのように管理するかで悩んでいます。
    ①イベントの親スコープで宣言する
    ②各イベント内で宣言する
    変数のスコープを狭めるには後者だと思うのですが、同じ名前の変数を何度も宣言する
    記述を今のところ見たことがないため質問しました。

    ↓は①の例です。
    var test = function() {
     var returnValue;
     var commonFunc = function(){...};
     window.addEventListener('resize', function() {
      returnValue = commonFunc();
       ...
     });
     window.addEventListener('scroll', function() {
      returnValue = commonFunc();
     ...
     });
    };

    >>527
    状態変数をはじめて知りましたので調べてみます。

    >>528
    普通と言いますか、現役の人達はだいたいがこう書いてるからこうしとけ的なのが知りたいです。
    492 : Name_Not - 2019/11/23(土) 15:13:04.64 ID:???.net (-1,-29,-50)
    関係がないなら変数の使い回しはするな
    varは使うな。constを使え。letは甘え
    現役の人はだいたいjQueryを使ってる。
    493 : Name_Not - 2019/11/23(土) 15:18:44.60 ID:???.net (+35,-28,-3)
    現役の人はだいたいvar使ってるんじゃね?
    494 : Name_Not - 2019/11/23(土) 15:18:49.81 ID:???.net (+57,+29,-32)
    状態保存したり、他から参照する必要があるなら外で宣言
    関数内だけで完結できる変数なら中で宣言しとけ。わざわざ外で宣言して同じ変数使い回してたらバグの温床になりかねない
    495 : Name_Not - 2019/11/23(土) 15:29:49.47 ID:???.net (+59,-29,-20)
    IE11ですら不完全ながらlet,const使えたのにsafari9以下が足を引っ張ってたのがね
    496 : Name_Not - 2019/11/23(土) 16:06:40.89 ID:???.net (+43,+25,+0)
    ふつーバベる。
    497 : Name_Not - 2019/11/23(土) 16:54:40.53 ID:???.net (+57,+29,-7)
    変数は必要ない限り関数中に閉じ込めるのが基本って何回言えばいいんだよw
    498 : Name_Not - 2019/11/23(土) 17:06:49.82 ID:???.net (+70,+29,-14)
    >>534
    変数の名前を全て管理する自信があるなら何やったって良い
    ちなみに見たことが無いのは職場環境の問題
    499 : Name_Not - 2019/11/23(土) 17:31:50.44 ID:???.net (+16,-29,-37)
    >>534
    ①の書き方で良い
    今回の場合、returnValueはcommonFuncに関係しているから、
    commonFuncを外に出す以上、returnValueも外に出すのは十分に自然で
    ニュアンス的に意味のある行為なのでその細かいセンスは自信を持って良い
    500 : Name_Not - 2019/11/23(土) 20:21:50.89 ID:???.net (+62,+29,-70)
    ノベルゲーム作っているのですが、
    各選択肢の先をportalタグで持っておいて、
    ある程度portalタグ内を読み勧めたら完全に遷移して後戻り出来なくしたいのですが、
    portalが切り替わるエフェクトモーションの挙動というかそのあたりの調整ってJSでどこまでできるのでしょうか?
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / JavaScript スレッド一覧へ
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

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


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