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

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

JavaScript覧 / PC版 /
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。
←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitter
651 = :

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 = :

.then(response => response.json())
.then(data => Object.keys(data).forEach(key => console.log(key));

653 = :

>>651
>>652
できました!ありがとうございます!

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

"2020-1-23"
2000000

確かPHPかなんかだとlastChildとかfirstChildみたいな書き方で末尾とか先頭を取り出せたので
同じことが出来るかなと

655 = :

>>654
ああなるほど、lengthで数にアクセスできて番号指定も使えるんですね
基本的な文法が勉強不足でした、ありがとうございます

656 = :

>>644
アロー関数は互換性の問題がありそうで使っていなかったのですが今は割と使えるんですね

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

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


参考になりました ありがとうございます

657 = :

>>631
失礼しました。
ググってみたところ、少し調べないと扱えなさそうなので合間をみて勉強してみます!

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

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

>createElementとcreateTextNodeを使うとXSS対策
ソースのURL見失ってしまいました…
PHPでaタグを設置してcreateTextNodeを利用すると、タグが文字列になっていましたので
エスケープされているっぽいです。なのでXSS対策になるってことなのかと理解していました。

658 = :

>>656
善し悪しにも判断要素が複数ある
例えば、パフォーマンス視点なら、「同じプロパティを複数回参照するのは無駄」なので、「要素値を変数にキャッシュ」が原則
自分が期待する動作と優先順位を考えて、質問で触れるべきだ

659 = :

> 例えば、パフォーマンス視点なら、「同じプロパティを複数回参照するのは無駄」なので、「要素値を変数にキャッシュ」が原則

パフォーマンスに問題が起きてないなら、絶対にやるな。

660 = :

ワードプレス使用者です。質問させていただきます。

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

手動で全部消すのはめんどくさいのですが、一括で消す方法、またはCSSなどでうまく手間かけずに直すことは出来るでしょうか?

661 = :

>>657
分かってないな
危険にしているのは文字列ではなく、それを扱う側だ
だからいくらHTML的やらなんやらエスケープしようと扱う側がどう扱うかによっていくらでも危険になりうる。
例え自分の扱うコード内で安全に完結していても、ライブラリやフレームワークが後からその値を参照して扱う事だってある。
そのときにそのライブラリやフレームワークの脆弱性を付かれるかもしれない。

だから切りがないのでどうしても心配なら簡単にできる緩和策を勝手にやってくれる物に頼っとけ。

662 = :

>>660
jQuery なら、これで全てのid が消える

$( "h1, h2, h3, h4, h5, h6" ).each( function( ) {
$( this ).removeAttr( 'id' )
} );

663 = :

別のTOCと競合してるのでは?
目次リンクにしたいならidがないと動かないと思うけど

664 = :

>>662>>663ありがとうございます。
競合の、可能性もあるんですね。もう何から調べてみたら分からなくなってますw

プラグイン「Table of Contents Plus」だと問題なく動作するんですが、「RTOC -Rich Table of Contents-」だとid=〇〇が入ってるhタグだけ上にスクロールされちゃうんですよね‥。

665 = :

>>659
オレオレ定義の絶対主義者か

666 = :

一言命令は絶対信用しないから安心していい

667 = :

一言命令って>>666みたいなもののこと?

668 = :

>>667
>>666のどこが「命令」なんだ?

669 = :

一言命令は>>659のことだろ
命令形というのがあってだな...

671 = :

ここは宿題代行所でもなければ、アルゴリズム研究会でもありません
例え答えがこっそり欲しくとも、可能かどうか?とか馬鹿な聞き方はやめなさい

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

具体的にどうするかは自ら学びなさい
ここは漠然とした質問をするところではありません。
最低限自ら学べる人、つまり具体的に問題を解決していける人が
どうしても具体的に困ったときに質問する場所です。

672 = :

>>671
ありがとうございます! sortでできました。

673 = :

なんで誰もサンプルコードはらねえんだよ
問題を絞り込めて整理できるのに

674 = :

質問者がコード貼ってないのに回答者が想像で貼っても仕方ないでしょ
俺たちは質問者のママ・パパではないのだから
質問者が抱える問題を絞り込むのは当然質問者の責任であって
こういう答えが欲しいから、その答えが帰ってくるであろう
しっかりした具体的な質問をするまでが質問者の責任であって
回答者が悩む状況は本来おかしいからな

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

良い回答をしてほしいなら、良い回答が付くような良い質問をしなければならない

675 = :

ごめん>>673は質問者がコード貼らないことに対する意見

676 = :

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 = :

rubyすげえ
俺もスマブラスレでモンハンの素晴らしさ語ってくるわ

678 = :

rubyの何がイヤって、厨二病ぽい名前がイヤ
pythonもだが

679 = :

[ [ 51, 52 ], [ -11, -12 ], [ 31, 32 ] ]
なら
[ [ -11, -12 ], [ 31, 32 ], [ 51, 52 ] ]
にソートしたいってことじゃないの

680 = :

そうですよ?

681 = :

普通に考えて1つ目の要素の比較でほぼほぼ順序が決まるのに
特にサーバサイド言語で常に全比較するコードを書いちゃう人はセンスが無い

683 = :

えっ、丸パクリじゃん。
せめてどこから取ってきたかぐらい
もっと書くべき。
2ちゃんだからって、何でも許されるわけとちゃうやろ・・・
JSやってる奴って基本こういうイメージ、怖い・・・

684 = :

それ好き
例のなんか嫌儲感あるよな

685 = :

>>683
JS質問者にそういうイメージある
そのコードをお前自身で説明してみろ、といいたくなる場面が多い

686 = :

分かってないやつが質問しに来てるからな
普通の質問所ならそれでいいんだろうが
ここわ泣く子も黙る2chだからな

687 = :

質問です。
一度処理したものは以降処理せずに、
複数のファイルで使いまわすにはどうすればいいでしょうか?
だいぶ端折ってますが、イメージはこんな感じです
(一度だけ処理したい理由はその処理が重いからです)

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

reuse.js
let a = "あああ"
a = "いいい" ←この処理は一度だけ
return a

689 = :

let memo = arguments.callee.memo = arguments.callee.memo || new Map
let a = memo.get('a')
if (!a) {
a = 'いいい'
memo.set('a',a)
}

690 = :

>>688-689
こんなやり方があるんですね。ありがとうございます!

691 = :

>>687みたいなのが>>685-686のイメージ
普通に頭を働かせれば、

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

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

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

大抵、こんな言い訳をする

692 :

>>683
えっ、丸パクリじゃん構文の丸パクリじゃん。
せめてどこから取ってきたかぐらい
もっと書くべき。
糞スレだからって、何でも許されるわけとちゃうやろ・・・
質問スレ住人って基本こういうイメージ、怖い・・・

【え?】ITエンジニア「えっこのサイト丸パクリじゃん…学生だからって許されるわけちゃうぞ」→オープンソースから作成したサイトでした
http://togetter.com/li/1490138

693 = :

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 = :

何て言語か知らないけどとんでもなく小汚ないね。

695 = :

触れるなよ汚いんだし

696 = :

>>694
汚物を見ると目が潰れるからこのスレに来ちゃいけません!

697 :

学術の巨大掲示板群 - アルファ・ラボ
http://x0000.net

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

PS スカイプ友達の掲示板http://skype.x0000.net

698 = :

>>692
引用せずに本文丸パクリじゃん

699 = :

コピペ+空行が引用だと思ってる輩が一定数いるようである
実に読みづらい

700 = :

nullをpostするとPHP側で空文字("")になってしまうのですが、nullのまま送信する方法はありますか?
一応nullでなければいけない理由はありませんので、難しいようであれば空文字をpostします。


←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / JavaScript一覧へ
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

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


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