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

    私的良スレ書庫

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

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

    JavaScript スレッド一覧へ / JavaScript とは? / 携帯版 / dat(gz)で取得 / トップメニュー
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。
    レスフィルター : (試験中)
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitter
    651 : Name_Not - 2020/04/02(木) 02:15:22.16 ID:???.net (+9,-30,-153)
    const data = {
    "Afghanistan": [
    {
    "date": "2020-1-22",
    "population": 2000000
    },
    {
    "date": "2020-1-23",
    "population": 2000000
    }
    ],
    "America": [
    {
    "date": "2020-1-22",
    "population": 2000000
    },
    {
    "date": "2020-1-23",
    "population": 2000000
    }
    ],
    };
    console.log(Object.keys(data));
    //=> ["Afghanistan", "America"]
    652 : Name_Not - 2020/04/02(木) 02:17:26.53 ID:???.net (+4,-30,-75)
    .then(response => response.json())
    .then(data => Object.keys(data).forEach(key => console.log(key));
    653 : Name_Not - 2020/04/02(木) 02:38:32.41 ID:???.net (+4,-29,-60)
    >>651
    >>652
    できました!ありがとうございます!

    ついでに聞きたいのですが、例えばAmericaというキーの値に二つの子が並んでますが、
    この最後の子だけ取り出す関数ってあったりしますか?
    最後の子の中に二つの値が入ってるのでそれを取り出したくて

    "2020-1-23"
    2000000

    確かPHPかなんかだとlastChildとかfirstChildみたいな書き方で末尾とか先頭を取り出せたので
    同じことが出来るかなと
    655 : Name_Not - 2020/04/02(木) 13:53:16.06 ID:???.net (+52,+29,-39)
    >>654
    ああなるほど、lengthで数にアクセスできて番号指定も使えるんですね
    基本的な文法が勉強不足でした、ありがとうございます
    656 : Name_Not - 2020/04/02(木) 20:19:42.91 ID:???.net (+110,+29,-65)
    >>644
    アロー関数は互換性の問題がありそうで使っていなかったのですが今は割と使えるんですね

    >>645
    確かにそうかもしれません
    バイナリというか連続したデータを取り出して扱うのは初めてだったので

    >>646,648
    もっと便利な方法が用意されているのではないかと思ったのですが、だいたいこんな感じなんですね


    参考になりました ありがとうございます
    657 : Name_Not - 2020/04/02(木) 21:53:12.39 ID:???.net (+48,-30,-239)
    >>631
    失礼しました。
    ググってみたところ、少し調べないと扱えなさそうなので合間をみて勉強してみます!

    >>635-636
    エスケープはhtmlspecialcharsしか使ってませんでした。
    強力なエスケープもあるのですね。ググってみます。

    バックエンド側でエスケープをかますしておけば、ajaxで渡した返り値は
    安全と考えてよいということでしょうか?
    であれば、クライアント側でreplaceと正規表現で対応できそうです!

    >createElementとcreateTextNodeを使うとXSS対策
    ソースのURL見失ってしまいました…
    PHPでaタグを設置してcreateTextNodeを利用すると、タグが文字列になっていましたので
    エスケープされているっぽいです。なのでXSS対策になるってことなのかと理解していました。
    658 : Name_Not - 2020/04/03(金) 08:18:33 ID:???.net (+77,+29,-99)
    >>656
    善し悪しにも判断要素が複数ある
    例えば、パフォーマンス視点なら、「同じプロパティを複数回参照するのは無駄」なので、「要素値を変数にキャッシュ」が原則
    自分が期待する動作と優先順位を考えて、質問で触れるべきだ
    659 : Name_Not - 2020/04/03(金) 10:45:07.38 ID:???.net (+125,+29,-68)
    > 例えば、パフォーマンス視点なら、「同じプロパティを複数回参照するのは無駄」なので、「要素値を変数にキャッシュ」が原則

    パフォーマンスに問題が起きてないなら、絶対にやるな。
    660 : Name_Not - 2020/04/03(金) 12:21:52.76 ID:???.net (+9,-29,-128)
    ワードプレス使用者です。質問させていただきます。

    プラグインで『Rich Table of Contents』と言う目次作成ソフトをインストールしましたが、目次をタップすると、ページ上部のタイトルにスクロールされてしまいます。
    HTMLを確認したところ、すべてのhタグにid=〇〇が入っており、id=〇〇を消すことで、目次が正常に動作します。

    手動で全部消すのはめんどくさいのですが、一括で消す方法、またはCSSなどでうまく手間かけずに直すことは出来るでしょうか?
    661 : Name_Not - 2020/04/03(金) 12:49:03.73 ID:???.net (+69,+30,-145)
    >>657
    分かってないな
    危険にしているのは文字列ではなく、それを扱う側だ
    だからいくらHTML的やらなんやらエスケープしようと扱う側がどう扱うかによっていくらでも危険になりうる。
    例え自分の扱うコード内で安全に完結していても、ライブラリやフレームワークが後からその値を参照して扱う事だってある。
    そのときにそのライブラリやフレームワークの脆弱性を付かれるかもしれない。

    だから切りがないのでどうしても心配なら簡単にできる緩和策を勝手にやってくれる物に頼っとけ。
    662 : Name_Not - 2020/04/03(金) 14:43:52 ID:???.net (+10,-30,-69)
    >>660
    jQuery なら、これで全てのid が消える

    $( "h1, h2, h3, h4, h5, h6" ).each( function( ) {
    $( this ).removeAttr( 'id' )
    } );
    663 : Name_Not - 2020/04/03(金) 14:59:01.06 ID:???.net (+7,-27,-7)
    別のTOCと競合してるのでは?
    目次リンクにしたいならidがないと動かないと思うけど
    664 : Name_Not - 2020/04/03(金) 16:18:35.60 ID:???.net (+4,-30,-102)
    >>662>>663ありがとうございます。
    競合の、可能性もあるんですね。もう何から調べてみたら分からなくなってますw

    プラグイン「Table of Contents Plus」だと問題なく動作するんですが、「RTOC -Rich Table of Contents-」だとid=〇〇が入ってるhタグだけ上にスクロールされちゃうんですよね‥。
    665 : Name_Not - 2020/04/03(金) 18:58:08 ID:???.net (+70,+29,-6)
    >>659
    オレオレ定義の絶対主義者か
    666 : Name_Not - 2020/04/04(土) 09:15:07.58 ID:???.net (+130,+29,-3)
    一言命令は絶対信用しないから安心していい
    667 : Name_Not - 2020/04/04(土) 11:35:15.64 ID:???.net (+104,+29,-5)
    一言命令って>>666みたいなもののこと?
    668 : Name_Not - 2020/04/04(土) 11:57:48 ID:???.net (+76,+29,-8)
    >>667
    >>666のどこが「命令」なんだ?
    669 : Name_Not - 2020/04/04(土) 13:12:20.86 ID:???.net (+74,+29,-24)
    一言命令は>>659のことだろ
    命令形というのがあってだな...
    670 : Name_Not - 2020/04/04(土) 20:13:51.58 ID:???.net (-1,-29,-31)
    値の個数が同じ複数の配列をまとめた二次元配列があり、それぞれの配列の1つ目の値を比較し昇順に並び替えたいのですが、それって可能ですか?
    671 : Name_Not - 2020/04/04(土) 20:37:22.31 ID:???.net (+65,+30,-124)
    ここは宿題代行所でもなければ、アルゴリズム研究会でもありません
    例え答えがこっそり欲しくとも、可能かどうか?とか馬鹿な聞き方はやめなさい

    配列の1つ目の値を比較し昇順に並び替えたいのなら、
    配列の1つ目の値を比較し昇順に並び替えればいいではないですか
    分かっているとは思いますが、不可能なことはありません
    少なくともあなたができることは機械でもできると考えなさい

    具体的にどうするかは自ら学びなさい
    ここは漠然とした質問をするところではありません。
    最低限自ら学べる人、つまり具体的に問題を解決していける人が
    どうしても具体的に困ったときに質問する場所です。
    672 : Name_Not - 2020/04/04(土) 20:41:50.44 ID:???.net (+8,-28,+0)
    >>671
    ありがとうございます! sortでできました。
    673 : Name_Not - 2020/04/04(土) 20:48:07.81 ID:???.net (+91,+29,-28)
    なんで誰もサンプルコードはらねえんだよ
    問題を絞り込めて整理できるのに
    674 : Name_Not - 2020/04/05(日) 08:50:59.72 ID:???.net (+63,+30,-177)
    質問者がコード貼ってないのに回答者が想像で貼っても仕方ないでしょ
    俺たちは質問者のママ・パパではないのだから
    質問者が抱える問題を絞り込むのは当然質問者の責任であって
    こういう答えが欲しいから、その答えが帰ってくるであろう
    しっかりした具体的な質問をするまでが質問者の責任であって
    回答者が悩む状況は本来おかしいからな

    勿論本当のやる気のある右も左も分からない初心者だと感じれば
    導いてあげることも吝かではないが、
    1行の質問かどうかも分からないような投げかけレスに
    そこまで親切にしてあげようという気持ちは沸かないだろう

    良い回答をしてほしいなら、良い回答が付くような良い質問をしなければならない
    675 : Name_Not - 2020/04/05(日) 10:07:35.59 ID:???.net (+69,+29,-5)
    ごめん>>673は質問者がコード貼らないことに対する意見
    676 : Name_Not - 2020/04/05(日) 11:26:15.17 ID:???.net (+3,-30,-26)
    Ruby なら、

    ary = [ [ 51, 52 ], [ -11, -12 ], [ 31, 32 ] ]

    p first_ary = ary.map { |inner_ary| inner_ary[ 0 ] } #=> [51, -11, 31]

    first_ary.sort!
    p first_ary #=> [-11, 31, 51]
    677 : Name_Not - 2020/04/05(日) 12:49:54.86 ID:???.net (+57,+29,-20)
    rubyすげえ
    俺もスマブラスレでモンハンの素晴らしさ語ってくるわ
    678 : Name_Not - 2020/04/05(日) 13:02:06.70 ID:???.net (+57,+29,-5)
    rubyの何がイヤって、厨二病ぽい名前がイヤ
    pythonもだが
    679 : Name_Not - 2020/04/05(日) 13:31:14.20 ID:???.net (+3,-30,-17)
    [ [ 51, 52 ], [ -11, -12 ], [ 31, 32 ] ]
    なら
    [ [ -11, -12 ], [ 31, 32 ], [ 51, 52 ] ]
    にソートしたいってことじゃないの
    680 : Name_Not - 2020/04/05(日) 13:50:32.29 ID:???.net (+44,+26,-1)
    そうですよ?
    681 : Name_Not - 2020/04/05(日) 14:10:02.27 ID:???.net (+57,+29,-39)
    普通に考えて1つ目の要素の比較でほぼほぼ順序が決まるのに
    特にサーバサイド言語で常に全比較するコードを書いちゃう人はセンスが無い
    683 : Name_Not - 2020/04/07(火) 11:02:10.65 ID:???.net (+41,+29,-21)
    えっ、丸パクリじゃん。
    せめてどこから取ってきたかぐらい
    もっと書くべき。
    2ちゃんだからって、何でも許されるわけとちゃうやろ・・・
    JSやってる奴って基本こういうイメージ、怖い・・・
    684 : Name_Not - 2020/04/07(火) 11:11:22.08 ID:???.net (+2,+29,-3)
    それ好き
    例のなんか嫌儲感あるよな
    685 : Name_Not - 2020/04/07(火) 19:20:40 ID:???.net (+107,+29,-26)
    >>683
    JS質問者にそういうイメージある
    そのコードをお前自身で説明してみろ、といいたくなる場面が多い
    686 : Name_Not - 2020/04/07(火) 19:56:24 ID:???.net (+57,+29,-27)
    分かってないやつが質問しに来てるからな
    普通の質問所ならそれでいいんだろうが
    ここわ泣く子も黙る2chだからな
    687 : Name_Not - 2020/04/07(火) 20:31:48.59 ID:???.net (+14,-30,-128)
    質問です。
    一度処理したものは以降処理せずに、
    複数のファイルで使いまわすにはどうすればいいでしょうか?
    だいぶ端折ってますが、イメージはこんな感じです
    (一度だけ処理したい理由はその処理が重いからです)

    aaa.js
    console.log(reuse.jsを呼ぶ)
    // 「いいい」を出力
    bbb.js
    console.log(reuse.jsを呼ぶ)
    // 「いいい」を出力

    reuse.js
    let a = "あああ"
    a = "いいい" ←この処理は一度だけ
    return a
    689 : Name_Not - 2020/04/08(水) 00:40:56 ID:???.net (+3,-30,-49)
    let memo = arguments.callee.memo = arguments.callee.memo || new Map
    let a = memo.get('a')
    if (!a) {
    a = 'いいい'
    memo.set('a',a)
    }
    690 : 687 - 2020/04/08(水) 02:10:50 ID:???.net (+51,+29,+0)
    >>688-689
    こんなやり方があるんですね。ありがとうございます!
    691 : Name_Not - 2020/04/08(水) 07:54:51.70 ID:???.net (+72,+30,-86)
    >>687みたいなのが>>685-686のイメージ
    普通に頭を働かせれば、

    「変数に出力値をキャッシュする」
    「一度だけconsole.logを実行するコードに調整する」

    とか、考えつくはずなのに、何も考えずに丸投げ

    「考えても思いつきませんでした」
    「そこまでは分かったのですが、コードにする方法が分かりませんでした」

    大抵、こんな言い訳をする
    692 : Name_Not - 2020/04/08(水) 11:23:24 ID:ws2DhC6B.net (+59,+30,-67)
    >>683
    えっ、丸パクリじゃん構文の丸パクリじゃん。
    せめてどこから取ってきたかぐらい
    もっと書くべき。
    糞スレだからって、何でも許されるわけとちゃうやろ・・・
    質問スレ住人って基本こういうイメージ、怖い・・・

    【え?】ITエンジニア「えっこのサイト丸パクリじゃん…学生だからって許されるわけちゃうぞ」→オープンソースから作成したサイトでした
    http://togetter.com/li/1490138
    693 : Name_Not - 2020/04/08(水) 13:21:33.99 ID:???.net (+3,-30,-86)
    Ruby でよく使う遅延初期化だろ

    obj ||= 1 つまり、obj = obj || 1
    obj が偽なら、1が設定されるが、真なら処理なし

    obj = nil
    p obj ||= 1 #=> 1

    obj = 2
    p obj ||= 1 #=> 2 のまま

    def f( obj )
    if obj == nil # 存在しない時だけ、設定する
    obj = 1
    else # 存在すれば処理なし
    end
    obj
    end

    obj = nil
    p f( obj ) #=> 1

    obj_2 = 2
    p f( obj_2 ) #=> 2 のまま
    694 : Name_Not - 2020/04/08(水) 13:37:31.29 ID:???.net (+91,+29,-4)
    何て言語か知らないけどとんでもなく小汚ないね。
    695 : Name_Not - 2020/04/08(水) 13:38:57.53 ID:???.net (+52,+29,-14)
    触れるなよ汚いんだし
    696 : なんで - 2020/04/08(水) 14:06:40.50 ID:???.net (+70,+29,-5)
    >>694
    汚物を見ると目が潰れるからこのスレに来ちゃいけません!
    697 : Name_Not - 2020/04/08(水) 14:43:34 ID:VJ27LW+4.net (+24,+29,-90)
    学術の巨大掲示板群 - アルファ・ラボ
    http://x0000.net

    数学 物理学 化学 生物学 天文学 地理地学
    IT 電子 工学 言語学 国語 方言 など

    PS スカイプ友達の掲示板http://skype.x0000.net
    698 : Name_Not - 2020/04/08(水) 20:14:00.40 ID:???.net (+61,+25,-2)
    >>692
    引用せずに本文丸パクリじゃん
    699 : Name_Not - 2020/04/08(水) 21:54:12.10 ID:???.net (+57,+29,-9)
    コピペ+空行が引用だと思ってる輩が一定数いるようである
    実に読みづらい
    700 : Name_Not - 2020/04/09(木) 12:19:58.83 ID:???.net (+3,-29,-39)
    nullをpostするとPHP側で空文字("")になってしまうのですが、nullのまま送信する方法はありますか?
    一応nullでなければいけない理由はありませんので、難しいようであれば空文字をpostします。
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / JavaScript スレッド一覧へ
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

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


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