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

みんなの評価 :
レスフィルター : (試験中)
>>700
お前がキチガイruby荒らしだろうが死ね!
お前がキチガイruby荒らしだろうが死ね!
>>674
賛成。どうやってID入れるの?
賛成。どうやってID入れるの?
文字列などのprimitive は、値しかないから変化しないので、キーに適する
一方、インスタンスは参照・インスタンスID だから、
そのインスタンスが削除されたら、キーが消えて、データを取り出せなくなる
一方、インスタンスは参照・インスタンスID だから、
そのインスタンスが削除されたら、キーが消えて、データを取り出せなくなる
>>700
全部お前のせいだろ。JSにもRubyにも迷惑かけんな。氏ね
全部お前のせいだろ。JSにもRubyにも迷惑かけんな。氏ね
>>702
メール欄を空にするとIDが表示されるよ
メール欄を空にするとIDが表示されるよ
例えばJavaと間違われるから見た人が間違わないようにJava禁止と入れるとかいうのなら分かるが
かなり関連性の低い言語の名前を入れるってスレタイ汚しにしかならんから絶対やめろ
Rubyの話題出してる奴が入れたから来ないわけでもないし、そんなことで議論する暇があったら
>>1のテンプレを時代に合わせて改良しようとしろ
ガキクサ
かなり関連性の低い言語の名前を入れるってスレタイ汚しにしかならんから絶対やめろ
Rubyの話題出してる奴が入れたから来ないわけでもないし、そんなことで議論する暇があったら
>>1のテンプレを時代に合わせて改良しようとしろ
ガキクサ
>>703
こんのクソボケrubyキチガイまーた適当ブッこきやがって死ね。
オブジェクトをmap替わりに使う場合は適するもクソもキーには文字列かシンボルしか使えねーんだよタコ。
任意のオブジェクトをキーにできるMap欲しいねってことでMap/WeakMap採用されたんだろうがカス。
キーに登録したオブジェクトが消えたらキーも消えて取り出せなくなるのはMapじゃなくてWeakMapの挙動だハゲ。
そのWeakMapの挙動もメモリリーク防げるよう望まれて規定された性質だ糖質。
嘘ばっかり喚き散らしてほんとこいつ嫌い死ね。
というわけで賛成!
こんのクソボケrubyキチガイまーた適当ブッこきやがって死ね。
オブジェクトをmap替わりに使う場合は適するもクソもキーには文字列かシンボルしか使えねーんだよタコ。
任意のオブジェクトをキーにできるMap欲しいねってことでMap/WeakMap採用されたんだろうがカス。
キーに登録したオブジェクトが消えたらキーも消えて取り出せなくなるのはMapじゃなくてWeakMapの挙動だハゲ。
そのWeakMapの挙動もメモリリーク防げるよう望まれて規定された性質だ糖質。
嘘ばっかり喚き散らしてほんとこいつ嫌い死ね。
というわけで賛成!
何かアンケやってるけどスレタイじゃなくてテンプレでしょ?
そこ違うと結果も全然違うと思うんだけど
そこ違うと結果も全然違うと思うんだけど
Ruby禁止とかつけた所で、じゃあPythonならいいのか?ってことになるので
意味がない。荒らしはどうせつけた所で書き込むので
スレタイが長くなるだけで何の効果もない。よって反対
意味がない。荒らしはどうせつけた所で書き込むので
スレタイが長くなるだけで何の効果もない。よって反対
ruby信者が圧倒的にキチガイで辟易しているからこんな事を話ているわけで
それならNGワードにでも登録すりゃ良い
スレタイに入れた所で書き込みを制限することはできないんだから
スレタイに入れた所で書き込みを制限することはできないんだから
承認欲求ってやつなんだろうな
賛成いっぱいもらいたい
賛成いっぱいもらったから俺が言ったことは認められたんだ
みたいな
賛成いっぱいもらいたい
賛成いっぱいもらったから俺が言ったことは認められたんだ
みたいな
>>697
なるほど、閲覧していたサイトもreturn falseをしていました
ただ同じコードを再現しようとしたとき、なぜかinnerHTMLを加えるとブラウザ側のコンテキストメニューが消えてしまいましたね
console.log(1);
return false;
//これだとブラウザ側のコンテキストメニューが出る
console.log(1);
elm.innerHTML='';
return false;
//これだと出ない(return falseの有無でも同じ)
自分はおそらく使う機会が無いのでだから何なんだという話なのですが・・
なるほど、閲覧していたサイトもreturn falseをしていました
ただ同じコードを再現しようとしたとき、なぜかinnerHTMLを加えるとブラウザ側のコンテキストメニューが消えてしまいましたね
console.log(1);
return false;
//これだとブラウザ側のコンテキストメニューが出る
console.log(1);
elm.innerHTML='';
return false;
//これだと出ない(return falseの有無でも同じ)
自分はおそらく使う機会が無いのでだから何なんだという話なのですが・・
例えば、model press のサイトでは、
画像上で、右クリックメニューを表示させたくない
表示されると、画像をダウンロードされてしまうから
だから、return false で検索すると、その場所が見つかる
画像上で、右クリックメニューを表示させたくない
表示されると、画像をダウンロードされてしまうから
だから、return false で検索すると、その場所が見つかる
firefoxなんだが
SHIFT押しながらだと普通に右クリックで
メニューが出てきたな
SHIFT押しながらだと普通に右クリックで
メニューが出てきたな
例えば、model press のサイトでは、
乃木坂46のNo.1 美人、佐々木琴子の記事が、最も参照される!
この画像をダウンロードされると、定期的に見に来てくれなくなるから、広告のクリックが減ってしまう
また、表示される広告も、個人や時期によって、コロコロ変わる
例えば、佐々木琴子の着ているパーカーを検索してから、ページを見ると、
PUMA のロシアのジャケットが表示されるようになる
それで、そのサイトから買えば、広告収入が入る
乃木坂46のNo.1 美人、佐々木琴子の記事が、最も参照される!
この画像をダウンロードされると、定期的に見に来てくれなくなるから、広告のクリックが減ってしまう
また、表示される広告も、個人や時期によって、コロコロ変わる
例えば、佐々木琴子の着ているパーカーを検索してから、ページを見ると、
PUMA のロシアのジャケットが表示されるようになる
それで、そのサイトから買えば、広告収入が入る
なんかを集計し、キーを日本語にしたいとき
オブジェクトをいわゆる連想配列っぽく使うのが普通のやり方ってことでいいんですかね
たとえば
const arr = ["孫 悟空", "孫 悟飯", "孫 悟天", "猪 八戒", "沙 悟浄"];
というリストを元に
//obj = {
//"孫" : "悟空 悟飯 悟天",
//"猪" : "八戒",
//"沙" : "悟浄"
//};
のような結果が欲しい場合、
const obj = {};
arr.forEach((elem)=> {
const seimei = elem.split(' ');
const sei = seimei[0];
const mei = seimei[1];
if( obj[sei] !== undefined ) {
obj[sei] += " " + mei;
}else{
obj[sei] = mei;
}
});
とするってことでいいんでしょうか
ifの部分(そのキーの中身がまだない場合)がやや大げさに感じるのですが、これはしょうがないんですかね
オブジェクトをいわゆる連想配列っぽく使うのが普通のやり方ってことでいいんですかね
たとえば
const arr = ["孫 悟空", "孫 悟飯", "孫 悟天", "猪 八戒", "沙 悟浄"];
というリストを元に
//obj = {
//"孫" : "悟空 悟飯 悟天",
//"猪" : "八戒",
//"沙" : "悟浄"
//};
のような結果が欲しい場合、
const obj = {};
arr.forEach((elem)=> {
const seimei = elem.split(' ');
const sei = seimei[0];
const mei = seimei[1];
if( obj[sei] !== undefined ) {
obj[sei] += " " + mei;
}else{
obj[sei] = mei;
}
});
とするってことでいいんでしょうか
ifの部分(そのキーの中身がまだない場合)がやや大げさに感じるのですが、これはしょうがないんですかね
>>730
const obj = arr.reduce((acc, name) => {
const [sei, mei] = name.split``;
acc[sei] = acc[sei] ? acc[sei] + ' ' + mei : mei;
return acc;
}, {});
const obj = arr.reduce((acc, name) => {
const [sei, mei] = name.split``;
acc[sei] = acc[sei] ? acc[sei] + ' ' + mei : mei;
return acc;
}, {});
>>735
まあそんな感じじゃない?
あまり空白でつなげるってないけど、俺なら
const obj = {}
for (const [sei, mai] of arr.map(name => name.split(' '))) {
if(obj[sei]) {
obj[sei] += ' ' + mei;
} else {
obj[sei] = mei;
}
}
あたりにしそう
まあそんな感じじゃない?
あまり空白でつなげるってないけど、俺なら
const obj = {}
for (const [sei, mai] of arr.map(name => name.split(' '))) {
if(obj[sei]) {
obj[sei] += ' ' + mei;
} else {
obj[sei] = mei;
}
}
あたりにしそう
>>740
副作用取ったぞ!
const obj = Object.entries(arr
.map(name => name.split` `)
.reduce((acc, [sei, mei]) => ({...acc, [sei]: [...(acc[sei] || []), mei]}), {}))
.reduce((acc, [sei, meis]) => ({...acc, [sei]: meis.join` `}), {});
副作用取ったぞ!
const obj = Object.entries(arr
.map(name => name.split` `)
.reduce((acc, [sei, mei]) => ({...acc, [sei]: [...(acc[sei] || []), mei]}), {}))
.reduce((acc, [sei, meis]) => ({...acc, [sei]: meis.join` `}), {});
>>741
もはや読み解く気にもならなくて草
もはや読み解く気にもならなくて草
ループ1回で済む>>735から副作用取ればいいじゃん。
const obj = arr.reduce((acc, name) => {
const [sei, mei] = name.split` `;
return {...acc, [sei]: acc[sei] ? acc[sei] + ' ' + mei : mei};
}, {});
const obj = arr.reduce((acc, name) => {
const [sei, mei] = name.split` `;
return {...acc, [sei]: acc[sei] ? acc[sei] + ' ' + mei : mei};
}, {});
>>744
ループ回数分オブジェクトが再構築されるのがえぐい
ループ回数分オブジェクトが再構築されるのがえぐい
じゃあ副作用使え。
現在のコンピュータのアーキテクチャでは副作用使った方が効率はいい。
そうしないのは効率以外のメリットがあるからだが今回reduce内のアキュムレータなんぞはわりとどうでもいい。
現在のコンピュータのアーキテクチャでは副作用使った方が効率はいい。
そうしないのは効率以外のメリットがあるからだが今回reduce内のアキュムレータなんぞはわりとどうでもいい。
arrを破壊しちゃダメなケースもあるでしょ
イテラブルをループ内でミューテートはノーグッド(ルー風)
イテラブルをループ内でミューテートはノーグッド(ルー風)
>>748
第一引数に文字列を取り、第二引数以降がないか、または省略できる関数hogeに対し、hoge('fuga')をhoge`fuga`と書いて同等の結果を得ることができる。
これはES2015のtaged templatesの仕様と、['piyo'].toString()が'piyo'となるjsの仕様を組み合わせて利用したイディオム。
第一引数に文字列を取り、第二引数以降がないか、または省略できる関数hogeに対し、hoge('fuga')をhoge`fuga`と書いて同等の結果を得ることができる。
これはES2015のtaged templatesの仕様と、['piyo'].toString()が'piyo'となるjsの仕様を組み合わせて利用したイディオム。



類似してるかもしれないスレッド
- + JavaScript の質問用スレッド vol.131 + (1000) - [97%] - 2017/1/25 8:01
- + JavaScript の質問用スレッド vol.135 + (1002) - [97%] - 2018/11/23 10:30
- + JavaScript の質問用スレッド vol.130 + (974) - [97%] - 2016/10/26 14:18
- + JavaScript の質問用スレッド vol.130 + (1001) - [97%] - 2017/11/25 20:45
- + JavaScript の質問用スレッド vol.117 + (1009) - [97%] - 2014/8/5 3:30
- + JavaScript の質問用スレッド vol.131 + (1004) - [97%] - 2018/3/7 13:30
- + JavaScript の質問用スレッド vol.132 + (1001) - [97%] - 2018/4/19 11:00
- + JavaScript の質問用スレッド vol.107 + (1001) - [97%] - 2013/9/7 10:16
- + JavaScript の質問用スレッド vol.133 + (1001) - [97%] - 2018/6/8 10:45
- + JavaScript の質問用スレッド vol.134 + (1001) - [97%] - 2018/8/3 23:15
- + JavaScript の質問用スレッド vol.136 + (1001) - [97%] - 2019/1/8 11:30
- + JavaScript の質問用スレッド vol.138 + (1004) - [97%] - 2019/4/20 23:45
- + JavaScript の質問用スレッド vol.139 + (1001) - [97%] - 2019/5/27 15:15
- + JavaScript の質問用スレッド vol.127 + (1001) - [97%] - 2016/2/4 0:15
- + JavaScript の質問用スレッド vol.127 + (160) - [97%] - 2021/7/16 9:30
- + JavaScript の質問用スレッド vol.113 + (1001) - [95%] - 2014/3/15 21:30
- + JavaScript の質問用スレッド vol.118 + (1002) - [95%] - 2014/8/29 22:30
トップメニューへ / →のくす牧場書庫について