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

    私的良スレ書庫

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

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

    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
    701 : Name_Not - 2013/09/17(火) 02:10:53.50 ID:??? (+52,+29,-2)
    だからちゃんと教えていこうね
    702 : Name_Not - 2013/09/17(火) 07:28:05.35 ID:??? (-2,-30,-80)
    container ={
    x:0
    }

    function plus(c){
    c.x=c.x+5;
    alert(c.x);
    }

    <h1 onClick="plus(container)" >たす</h1>

    引数を関数内で操作したいならこうじゃね
    703 : Name_Not - 2013/09/17(火) 08:11:05.06 ID:??? (+3,-30,-80)
    <ol contenteditable>
    <li>hoge</li>
    <li>fuga</li>
    </ol>
    のようなHTMLで、編集中のアクティブなli要素を取得する方法はないでしょうか。
    event.targetやdocument.activeElementにはol要素が入っちゃいますし
    cssのli:focusなんかも反応しません。
    liの方にcontenteditable付ける以外の方法ありましたら教えて下さい(←だとliをまたいだ複数行選択できない)
    704 : Name_Not - 2013/09/17(火) 09:04:24.29 ID:??? (+81,+20,-31)
    予約語をメソッド名に使ってはいけないのでしょうか?
    705 : Name_Not - 2013/09/17(火) 09:11:26.19 ID:??? (+3,-29,-101)
    http://alphasis.info/2012/11/javascript-reference-reserved_words/

    JavaScriptの予約語は、変数名、関数名、メソッド名、オブジェクトの識別子に使えない。

    とありました
    でもinというメソッド名を使っていて問題なく動作していて
    JSHintでも何も言われません
    sublimeのJSformatをかけたらinが予約語と勘違いされてフォーマットされたので
    アレ?と思いましたが。
    706 : Name_Not - 2013/09/17(火) 09:22:27.32 ID:??? (+72,+29,-71)
    だから、あなたがたまたま使っている処理系で問題が無かったとしても、将来出てくる
    処理系で、または他人が使っている処理系で動かない場合に、処理系が悪いのではなく
    標準を無視した作者が悪いということになるわけで。それでよければ別にいいんじゃないの。
    707 : Name_Not - 2013/09/17(火) 09:26:54.04 ID:??? (+57,+29,-2)
    使わないに越したことはないですね
    ありがとうございました
    708 : Name_Not - 2013/09/17(火) 09:40:46.69 ID:??? (+57,+29,-9)
    もし自分で言語を作ることがあったら
    謎の予約後をひとつは入れておきたい
    709 : Name_Not - 2013/09/17(火) 10:00:19.79 ID:??? (+31,-29,-11)
    710 : Name_Not - 2013/09/17(火) 10:02:14.18 ID:??? (-2,-30,-52)
    703ですが
    window.getSelection().getRangeAt(0).commonAncestorContainer.parentNode
    でアクセスできたので取り下げます
    711 : Name_Not - 2013/09/17(火) 10:29:41.81 ID:??? (+26,-18,-6)
    >>706,707
    ES5から仕様で使ってもいいことになった
    どんどん使って問題ない
    712 : Name_Not - 2013/09/17(火) 10:46:33.76 ID:??? (+62,+29,-8)
    >>709
    Google様ありがとうございます!!
    これで来年には表面上だけでもスッキリ縁が切れそうだ。
    713 : Name_Not - 2013/09/17(火) 11:19:07.38 ID:??? (-1,-29,-7)
    次期ES、と思ったらES5ですか
    じゃあJSformatは一種のバグかな
    714 : Name_Not - 2013/09/17(火) 11:34:51.23 ID:??? (+37,-30,-54)
    >>711
    なんでも使っていいって事ではなくて
    「ES5では、オブジェクトプロパティ識別子として予約済みキーワードを使える」って話じゃないの?
    Allow reserved words as property names under es5
    http://github.com/jshint/jshint/pull/801
    715 : Name_Not - 2013/09/17(火) 11:41:56.61 ID:??? (+62,+30,+0)
    716 : Name_Not - 2013/09/17(火) 11:44:57.63 ID:??? (-1,-29,-4)
    いつの間にかtype="text/javascript"を書かなくてもよくなってたのか・・・
    717 : Name_Not - 2013/09/17(火) 11:46:20.09 ID:??? (+39,+21,-1)
    何を今更w
    718 : Name_Not - 2013/09/17(火) 12:14:02.66 ID:??? (-1,-29,-6)
    廃止されたtext/javascriptが初期値なのは納得いかない
    719 : Name_Not - 2013/09/17(火) 12:22:42.88 ID:??? (+75,+23,-3)
    廃止なんてされてないけど
    720 : Name_Not - 2013/09/17(火) 12:27:55.14 ID:??? (+7,+29,-22)
    オブジェクトのキーに漢字やキリル文字を使うのは、よろしくないですか?
    721 : Name_Not - 2013/09/17(火) 12:28:33.89 ID:??? (-1,-29,-5)
    廃止は
    language="JavaScript"だな
    今思うとこっちの方がいいんじゃないのかと思う
    722 : Name_Not - 2013/09/17(火) 12:29:58.71 ID:??? (+87,+28,-20)
    >>720
    ソースを見る人によっては文字化けするということを除けば問題ない
    あと文字コードに注意
    723 : Name_Not - 2013/09/17(火) 12:31:08.64 ID:??? (+88,+30,+0)
    724 : Name_Not - 2013/09/17(火) 12:32:48.58 ID:??? (+65,+26,-1)
    >>723
    廃止はされてないじゃん
    725 : Name_Not - 2013/09/17(火) 12:33:28.58 ID:??? (+63,+29,+1)
    >>722
    なるほど、ありがとう
    726 : Name_Not - 2013/09/17(火) 12:48:01.10 ID:??? (+6,-29,-18)
    >>724
    javascript (obsolete) と登録されてる
    リンク先のRFC4329で定義されている通り、初めから廃止されたMIMEタイプとして追加されたんだけどね
    727 : Name_Not - 2013/09/17(火) 13:29:11.51 ID:??? (-1,-29,-23)
    statementとdecrationとexpressionの違いは何ですか
    728 : Name_Not - 2013/09/17(火) 14:37:18.74 ID:??? (+57,+29,-41)
    statement 「文」:命令の最小単位
    expression 「式」:評価され値を返す

    「値」だけなのも「式」
    「式」だけなのも「文」
    つまり「値」⊂「式」⊂「文」
    729 : Name_Not - 2013/09/17(火) 14:58:33.34 ID:??? (-2,-30,-65)
    なるほどー
    esprimaのようなパーサでsyntax treeを作った時
    programより下の一番粒度の高いオブジェクトはstatementということですね
    730 : Name_Not - 2013/09/17(火) 15:09:55.22 ID:??? (-1,-29,-31)
    text/javascriptは最初から標準じゃないだけで廃止されたんじゃないよ
    731 : Name_Not - 2013/09/17(火) 15:27:12.77 ID:??? (-1,-29,-25)
    firefox23でJavaScriptの有効/無効の切り替えってどうやってる?
    QuickJava というアドオンが便利そうだけど、他にいい方法あるかな
    732 : Name_Not - 2013/09/17(火) 16:09:02.65 ID:??? (+52,+29,-2)
    無効にする必要なんてないだろ
    733 : Name_Not - 2013/09/17(火) 16:16:25.49 ID:??? (-1,-29,-10)
    unobtrusive javascriptの確認で必要なんです
    QuickJavaで簡単に切り替え出来たんで、これで十分みたい
    734 : Name_Not - 2013/09/17(火) 16:35:47.85 ID:??? (+53,+21,-38)
    prefbarおぬぬめ

    と書こうと思ったら解決してた
    735 : Name_Not - 2013/09/17(火) 17:49:08.72 ID:??? (+5,-29,-42)
    >>734
    そんなのもあるんだ、ありがとう
    PrefBarのほうが拡張機能の種類が多いですね
    QuickJavaはもっと簡単な機能をアドオンバーに表示されたボタンでサクッと切り替える感じ
    736 : Name_Not - 2013/09/17(火) 21:58:15.50 ID:??? (+64,+29,-11)
    催促するようで申し訳ないのですが、
    >>93の件で>>120以降回答をいただけていないのですが、
    見てもらえますでしょうか。
    737 : Name_Not - 2013/09/17(火) 22:30:52.87 ID:??? (+3,-30,-120)
    javascriptにクロージャっがあるみたいなんですが、AS3とかC#と同じ感じで使って問題ないですか?
    クロージャもラムダも似たようなもんかなって思ってます

    c#だとこんなのイメージしてます
    var f = new Action<string>((msg) => { Console.WriteLine(msg) });
    f("hellow world");

    as3だとこんなのイメージしてます
    var f:Function = function(msg:String):void {Alert.show(msg)};
    f("hellow world");
    738 : Name_Not - 2013/09/17(火) 22:35:57.95 ID:??? (+19,+1,-3)
    ん?
    739 : Name_Not - 2013/09/17(火) 23:36:08.73 ID:??? (+4,-30,-35)
    var f = function(msg) { alert(msg) };
    f("hellow world");

    javscriptだとこう?
    741 : Name_Not - 2013/09/17(火) 23:54:49.17 ID:??? (-1,-29,-20)
    >>740
    >>689か?
    グローバル変数とローカル変数の問題だよ。
    742 : Name_Not - 2013/09/18(水) 00:08:39.82 ID:phEPVapY (-28,+23,-52)
    最初はグローバル変数だったやつが関数内も同じ文字を使ったゆえにローカル変数になり、値が引き継がれなくなったということですか?
    743 : Name_Not - 2013/09/18(水) 01:09:58.68 ID:??? (+3,-30,+0)
    >>742
    いや、ひとつの変数がグローバル変数からローカル変数に変化するとかじゃないよ。
    グローバル変数のxとローカル変数のxは別々に存在する。

    x=0; ←グローバルx

    function plus(x){ ←ローカルx
      x=x+5;      ←ローカルx
      alert(x);      .←ローカルx
    }

    <h1 onClick="plus(x)" >たす</h1> ←グローバルx

    function plus(x){ は、意味合い的に function plus(var x;){ ということ。
    Clickされると plus(0) が実行される。
    すると関数は実質的にこのような動作となる。
      var x=0;
      x=x+5;
      alert(x);
    この後、関数内ローカル変数のxはドブに捨てられる。
    グローバル変数のxは何も操作されていないので、そのままの0です。
    744 : Name_Not - 2013/09/18(水) 01:28:15.73 ID:phEPVapY (+27,+29,-22)
    誤解しておりました。深夜まで丁寧な説明をしてくださりありがとうございました。
    745 : Name_Not - 2013/09/18(水) 02:13:18.22 ID:??? (+7,-30,-100)
    >>739
    超ありがちな例だとこんな

    var f = (function(){
      var a = 0;
      return function(){ alert(++a); };
    })();

    f(); // 0
    f(); // 1
    f(); // 2


    こういうのは
    var f = function(msg){ alert(msg) };

    単に変数に関数オブジェクトを放り込んでるだけで
    本質的にはクロージャとは関係もない
    746 : Name_Not - 2013/09/18(水) 02:22:52.49 ID:??? (+43,+25,+0)
    ちょ
    747 : Name_Not - 2013/09/18(水) 02:27:38.07 ID:??? (+106,+29,-46)
    本来関数fからは外のスコープが見えるはずだけど
    最近のエンジンは必要な変数しかコンテキストに付加しないから
    実際は見えないから真にクロージャじゃない

    それがどうしたと思うかも知れないが
    デバッグでステップ実行とかすると困る事がよくある
    748 : Name_Not - 2013/09/18(水) 03:10:26.99 ID:??? (+57,+29,-30)
    「真のクロージャ」とか自分で勝手に定義してるだけでは?
    JSにおけるクロージャはそういうものだろう
    749 : Name_Not - 2013/09/18(水) 04:49:47.54 ID:??? (+67,+27,-5)
    >>784
    ぜんぜん違う
    JSとか関係なくこれは実行系次第
    750 : Name_Not - 2013/09/18(水) 05:16:08.82 ID:??? (+52,+29,-9)
    「真のクロージャ」のソースは?
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / JavaScript スレッド一覧へ
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

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


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