X

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

■ このスレッドは過去ログ倉庫に格納されています
2019/04/20(土) 17:50:41.00ID:???
JavaScript を自ら学ぶ人のための質問スレッドです。
次スレは>>950が(本スレで改善案があれば考慮して)立ててください

■規則/推奨ルール
・メール欄を空欄にし、名前にレス番を入れることを強く推奨(なりすまし防止)
・質問内容は具体的に。言葉だけでなく、出来る限り再現性を確認したサンプルコードの掲示。
・質問テンプレートの利用推奨。
・質問への「答え」から解離した議論はよそでやること。
■禁止行為
・丸投げ質問
・迷惑スクリプトの質問
・オレオレ用語の使用(一般的な用語を使用する事)
・煽り、批判等の他人を不快にさせる行為(批判の代わりに「AよりBが良い」のような代案を出す事)
■質問テンプレート
【環境】OS, ブラウザをバージョンと共に記入してください。
【条件】期待する回答の条件を書いてください。
【何をしたのか】何をしたら問題の現象が発生するのか。再現手順を具体的に書いてください。
【エラーメッセージ】エラーメッセージがあれば正確に書き写してください。
【期待する結果】最終的にどういう結果を望んでいるのか、を書いてください。
【サンプルコード】現象を再現可能な最小限のコードを書いてください。
 1レスに収まらないならコード投稿サイトを利用してください。
 http://jsdo.it/ http://jsbin.com/ http://jsfiddle.net/ http://ideone.com/
■回答者へ
・回答には多様性があります。他人の回答を尊重してください
・動作ブラウザや環境が限られる場合は、それを明記してください
・他人の回答を批判する代わりに、自分ならこう書くという例を示してください
・質問者がJavaScriptでなければ実現できないと勘違いしてるなら、その否定としてHTMLとCSSで実装しても良い
・他人の回答を見たくないのであれば、文句をつける代わりにNGにして見えないようにしてください。文句をつける=荒らしです

■前スレ
+ JavaScript の質問用スレッド vol.138 +
http://mevius.5ch.net/test/read.cgi/hp/1550337177/
95Name_Not_Found
垢版 |
2019/04/26(金) 19:04:27.87ID:BjOQfhGi
>>94
そりゃ俺俺だもの
あたりまえじゃーん
使う人だけで仕様を共有するんだよ
96Name_Not_Found
垢版 |
2019/04/26(金) 19:04:53.11ID:aJDCbTrO
俺もユーティリティ系のモジュールは$にインポートする
他の人に話が通じない?そんなことはない
Oredayo.hogehoge()の代わりに$.hogehoge()とか使ってたら混乱する?
んなわけない
2019/04/26(金) 20:03:26.55ID:???
>>89
どう読んだのか知らんけど、

> 「サイズが小さい」は圧縮ツールを使えば、同様の事が可能な為、この書き方を好む人は次のような人です。
>
> - 出来るだけ短いタイプ数で気持ちよくコーディングをしたい人
> - 書いたコードを保守する場面を考慮しない人
> - 自分がコードを分かれば良い人(他人がコードを読む配慮がない)

君はそういう人なのね
2019/04/26(金) 20:29:47.67ID:???
>>97
今はjQueryの$の話だよ?

$は正確には変数ではなく関数である。
一文字を使ってるのは$だけである。
jQueryはできるだけ短いタイプ数にはなっていない。(toggleClassなど)
$は世界中で知られている。自分以外もわかる。他人がコードを読む配慮担っている。

つまりそこに書いてるのと全く当てはまらないから
逆に使うべきってことになる。
2019/04/26(金) 21:03:24.71ID:???
知ってるよ!prototypejsの記号だよね!
2019/04/26(金) 21:08:20.15ID:???
そう。このようによく知られているならばいいんだよ
俺俺で使うなって話
2019/04/26(金) 21:09:16.80ID:???
>>100
ばかだなあ
オレオレは俺しか使わないからどうでもいいんだよ
2019/04/26(金) 21:12:15.15ID:???
>>98
> つまりそこに書いてるのと全く当てはまらないから
> 逆に使うべきってことになる。
これは酷い
2019/04/26(金) 21:15:01.16ID:???
ふむ。やはり明確な反論はなしか。
2019/04/26(金) 21:19:55.59ID:???
>>87
懐かしいなあ
片手で打てることを重視してsdfと名付けたなあ
2019/04/26(金) 21:26:20.45ID:???
短い名前はダメって言ってる人にysarlijgakjfafjcajfa8pという
長い名前ならいいでしょ?っていうとよっぽどの馬鹿じゃない限り
本当にダメなのは長いかどうかじゃなくて、その名前から意図が
読み取れるかどうかだってわかるはずだよ。
2019/04/26(金) 21:35:47.71ID:???
>>103
反論以前の問題では?
>>98の「いってないことが俺様が勝手にルール決めるね?」って明らかにおかしいでしょ
2019/04/26(金) 21:38:21.31ID:???
俺様って、リンク先の回答者のことかいな?
一般人の書き込みを、信じるとかあほらしw
2019/04/26(金) 21:45:10.30ID:???
>>107
君、文章読めない人?
>102が引用している一文
2019/04/26(金) 22:34:15.85ID:???
どんなに丁寧に書いてもしドキュメントまで整備したとしても
結局は約立つのはほんの一部でしかないのだから
オープンソースの長期プロジェクトでもない限り
適当に書いて、書かれたものは読み解こうとせず丸ごと捨てて書き直すのでいい
そもそもプログラムというのはコンピュータに向けた司令なのだから
誰かわからない将来見るかもしれない人が分かるように書くとか愚の骨頂
110Name_Not_Found
垢版 |
2019/04/26(金) 23:18:51.78ID:LJ742W6h
しつもん

WeakSetってなんで作られたの?
2019/04/27(土) 06:57:13.79ID:???
そんな漠然とした質問をここでするな
ググれば色んな解説が出てくるだろう
それを見て分からないとこだけ具体的に質問しろ
112Name_Not_Found
垢版 |
2019/04/27(土) 12:50:06.90ID:yfRiKmn6
>>111
何だここ質問スレッドじゃなかったか
全部の質問にそう言ってたらいいと思うよ
2019/04/27(土) 14:29:06.30ID:???
ワードプレスサイトに自動見積もりフォームみたいなの実装しなきゃいけないんだが(加工品のサイズや数量入れて見積もりさせる)
この手の物はjqueryでやればいいんかね
一回jqueryで似たようなの作った時はたいそう面倒臭かった記憶がある
かといってそのページだけのためにフレームワークとか使うのもな…てかフレームワーク使ったことないし不安
2019/04/27(土) 15:00:07.12ID:???
フロントエンドエンジニアとHTMLコーダーを分けるものはJavaScript(が書けるか書けないか)という理解でよろしいか?
2019/04/27(土) 20:09:38.24ID:???
>>110
弱参照
2019/04/27(土) 20:15:59.57ID:???
ビオレU
2019/04/27(土) 21:45:26.33ID:???
>>112
ここは自ら学ぶ人のための質問スレッド
思いつきやお遊びの適当な質問に対して緩く会話するスレではない

自ら学ぶ気がある奴がどうしても躓いたときに知恵を貸して貰うために丁寧に質問し、
回答者は質問者が自分で勝手に助かれるよう答えではなくヒントを与えるためのスレ
そこを履き違えてはいけない
2019/04/27(土) 21:49:53.97ID:???
>>113
Ruby on Rails でも、Node.js, jQuery は必須

Vue.js を使う人もいるほど
119Name_Not_Found
垢版 |
2019/04/27(土) 21:53:19.09ID:UFsrk3Ja
>>117
そうか、申し訳なかった
2019/04/27(土) 22:24:10.87ID:???
>>116
節子、それ弱参照やない。弱酸性や。
121121
垢版 |
2019/04/27(土) 22:39:16.03ID:6CFCNxON
Tumblrの投稿記事(xxx.tumblr.com/post/ID)の本文中に
貼り付けた画像に後からDOM操作でグループクラスを指定したい。

var images = $(".postcontent img");
$.each(images, function(index, element){
$(element).wrap('<a href="' + element.src + '" group="' ■ '"></a>');
})
本文には複数枚の画像が貼り付けられています。
■にこの画像が貼られてる記事のIDもしくは
例えば投稿時間などこの記事単独のキーワードを
記入することはできないでしょうか?
tumblr独自タグ{postID}がこの場合使えないため困っています。
例えばここにABCと固定文字を入れてしまうと、
複数の記事が同一ページにある時は全ての記事内の画像が
グループ化されてしまいます。
2019/04/28(日) 07:12:19.06ID:???
>>119
ここのスレでなくてもどう答えたら良いか分からないだろう

Map、WeakMap、Set全部完璧に理解していてWeakMapのユースケースがわからないと言いたいのか
そもそもWeakの価値がわからなかったり、Setの価値がわからなかったりするのか
そういうのを抜きにしてWeakMapについて1から語るにしてもGCや弱参照のことは知ってるのかとか
「どうしてこういう仕様で作られたのか」という話を始めたら
裏話の中では最も有名で象徴的なあのエピソードも交えないといけないかもしれないし

君がどこまで知っていて次何を知りたいのかは、どこの質問所でもはっきりさせたほうがいいよ
123Name_Not_Found
垢版 |
2019/04/28(日) 11:02:49.36ID:tyq5ShD0
>>122
weakSetの要素が弱参照でガベージコレクションの対象になると言うことも知ってる
weakSetで参照するときにガベージコレクションの参照数カウンタ
がインクリメントされないとかなんとか
完璧に理解しているとは言えないと思う
weaksetの仕様を読んだが本当に何に使うかわからないし、調べても出てこなかったからユースケースも聞きたい。
そういう意味を含めてどんな経緯で、どんな目的で、どんな言語から影響を受けて作られたのかと思って質問した

つまり聞きたい順番としては
1.どんな経緯で実装されたのか
2.使いみちどんな場面なのか

って感じです
124Name_Not_Found
垢版 |
2019/04/28(日) 11:05:42.37ID:tfz+mveo
weakmapに比べて使いみちがなさすぎると思ったんだよ

もしかしてmap と setが作られて
weakMapが欲しいとなったときにノリで実装されたみたいな話になるのか?
125115
垢版 |
2019/04/28(日) 12:29:54.84ID:ujOprkgi
>>117
あなたのような真面目に回答しようとする人がまだここにいる事に驚いた
今はもうteratailやらSOやらに移動したものと思ってたから
126Name_Not_Found
垢版 |
2019/04/28(日) 12:36:20.32ID:ujOprkgi
>>123-124
そこまで理解できているのなら、「MapとWeakMapの違い」を「SetとWeakSetの違い」に当てはめるだけで十分と思うが、WeakMapはどういう使い道だと思っているんだ?
あるいは、MapとSetの違いをどのように理解している?

実際、俺がおまえなら、自己解決できるし、何か考え方に問題があるのだと思う
「一般的な書き方」とか「正しい書き方」を求めているタイプならそれが原因
2019/04/28(日) 12:40:33.88ID:???
> WeakMapはどういう使い道だと思っているんだ?
それが質問内容。

質問者に聞いてどうする?
128Name_Not_Found
垢版 |
2019/04/28(日) 12:46:28.56ID:ujOprkgi
>>127
>>124を見る限り、WeakMapは理解しているように読めるが
2019/04/28(日) 13:09:37.61ID:???
>>128
だから、お前もWeakMapは理解してるだろ?
いつ使ったか言ってみろって。使いみちというのはそういうことだ。
2019/04/28(日) 13:12:34.13ID:???
>>110はMap,WeakMap,Set,弱参照は理解していて、WeakSetを知りたい、って理解でいいのかね?
普通はわかりそうなもんだが
2019/04/28(日) 13:17:53.06ID:???
>>129
質問内容を読み直したら? >>110
2019/04/28(日) 13:21:37.24ID:???
>>131
あの質問内容を見て、使いみちを聞いてるってわからなかったのか?
2019/04/28(日) 13:23:57.56ID:???
>>132
WeakSetの使い道を聞いてる人にWeakMapの使い道を答える不自然さにいい加減、気が付きなさいよ
2019/04/28(日) 13:35:19.16ID:???
>>133
どこが不自然なのか、答えてみてくれる?
2019/04/28(日) 13:36:32.81ID:???
5ちゃんねるはひねくれた回答をする場所なんだよ!
使いみちを聞かれたら、お前そんなもわかんねーの?って煽るのがデフォだから
2019/04/28(日) 13:37:21.36ID:???
>>134
聞いてもいない知っている内容を回答されるところ
2019/04/28(日) 13:41:02.20ID:???
>>136
だから、
使いみちを聞いてるなら、
使いみちを回答するべきですね

それでさ、いいからお前何に使ってんの?
138Name_Not_Found
垢版 |
2019/04/28(日) 13:43:31.13ID:ujOprkgi
真面目に回答して何の発展性もない煽りしか返ってこないぐらいだからな
質問者本人が煽っているのかと勘繰りたくなるぐらいだ
2019/04/28(日) 13:46:16.89ID:???
質問を誤読していた>>127が必死に矛先を逸らしているだけに見える
2019/04/28(日) 13:53:08.41ID:???
>>137
WeakMapはDOMノードとか{}とか配列とか、いろいろ使ってるよ
もう荒らさないでね
141Name_Not_Found
垢版 |
2019/04/28(日) 13:58:38.36ID:tfz+mveo
質問者本人だが、weakmapはカプセル化とか隠すために使ったりしてるよ
2019/04/28(日) 14:02:20.21ID:???
WeakMapの用途が分かって良かったな
2019/04/28(日) 14:13:56.65ID:???
いやWeakSetは?
2019/04/28(日) 14:18:44.76ID:???
>>127はWeakMapの質問だと思っていたようだからな
2019/04/28(日) 14:23:48.61ID:???
この質問者、相手によって横柄な態度をとるよね
>>123-124はMap,WeakMap,Setの理解度を説明していない時点で不十分な補足
あて推量だけど、>>126>>130の解釈になるのも理解できるよ(煽りと思ってるのか、スルーされちゃってるけど
2019/04/28(日) 14:29:28.33ID:???
>>122>>126の趣旨はほぼ同じ
要件をはっきりさせるのは基本じゃね?
2019/04/28(日) 16:11:53.29ID:???
>>124
Weak系は元々列挙可能な仕様だったけど
実装方法が狭まるから削除された
列挙ができなくなった事もあって
やっぱりいらないんじゃないか論も出たけど
簡単に言うと半分ノリで実装された
2019/04/28(日) 16:36:02.74ID:???
>>147
WeakMapは列挙不可能だが、WeakSetは列挙可能
列挙不可能はそれでメリットあるし、列挙可能なら弱参照性を利用すればいいし、ようするに使い分け
149148
垢版 |
2019/04/28(日) 16:56:37.00ID:mpzFjr24
列挙可能(enumerable)ではなく、iterableだったな
2019/04/28(日) 17:10:55.99ID:???
どんな経緯で生まれたにせよ、用途は使う人が決めるもの
けど、>>110は「ノリで作られたのなら、使う機会はなさそうですね」という結論に落ち着くんだろうなー
151124
垢版 |
2019/04/28(日) 17:45:25.70ID:???
vscodeでjs を書いたんだけど動かすためにはnode要るの?
2019/04/28(日) 18:13:13.59ID:???
>>151
ブラウザで動かすなら不要
というか、>>124に回答されてるんだからレスしろよ
2019/04/28(日) 18:24:21.03ID:???
>>152
そうか
でもide上で動かしたいんだよ最新の安定版nodeって11でいいの?

なぜか間違って名前欄に124入ったけど
私は124ではない
2019/04/28(日) 19:00:59.87ID:???
>>153
なんで情報を小出しにするのか
そのIDEのヘルプを見ろ
155Name_Not_Found
垢版 |
2019/04/28(日) 19:10:05.60ID:tfz+mveo
答えてくださった方、ありがとうございます。
なんで荒れたかは分からんけど勉強になりました
2019/04/28(日) 19:10:45.59ID:???
>>150
だから、使う用途を聞いてるんだろ?

なんで「使う機会はなさそう」って思ってる人がそんなことはないだろうと用途を聞いたら
それに答えられないで「使う機会はなさそうって結論になるんだろうな」って感想言って終わりなの?
2019/04/28(日) 19:17:18.85ID:???
>>156
だから、なぜ「経緯」を聞いてるの?
明確な理由か想像できるなら教えて
2019/04/28(日) 19:20:11.95ID:???
>>157
経緯は聞いてないぞ。
あんたが、WeakMapを使った理由だ。
無いって無いなら、やっぱ無いんだろうなあ
2019/04/28(日) 19:23:28.06ID:???
>>158
質問者が>>123で聞いてる経緯の話だよ
最初からその話しかしてない
2019/04/28(日) 20:30:35.88ID:???
失敗を認められない大人ってほんと恥ずかしいね
ああ恥ずかしい
2019/04/28(日) 20:38:17.73ID:???
環境構築ムズイな何から入れたらいいのかわからん
そこら変詳しい本ないですか?
2019/04/28(日) 23:00:23.25ID:???
だから、何の環境構築なのかと
なんでいつも肝心の所を省略するんだよ!
2019/04/28(日) 23:20:53.32ID:???
npmっていうの?モジュールの管理とか仮想環境とかそこらへんの環境です。
2019/04/28(日) 23:32:22.29ID:???
つまりなんだかよくわからないってことね。
2019/04/28(日) 23:42:00.30ID:???
>>121
><a href="〜" group="〜"></a>

最初に、<a href="〜"></a> だけを作っておいて、
後で、group 属性に、値を設定すれば?

つまり、2つの処理に分ける
2019/04/28(日) 23:46:35.93ID:???
>>151
Ruby on Rails でも、どの言語でも、
web 系開発では、Node.js, jQuery は必須

Vue.js を使う人もいるほど
2019/04/28(日) 23:51:02.35ID:???
>>166
黙って野垂れ死ね
2019/04/29(月) 09:56:37.73ID:???
>>167
相変わらず、口が悪い質問者だな
2019/04/29(月) 14:44:30.68ID:???
>>148,149
いや、WeakSetも列挙不可能だよ
コミュティでの話し合いで実装方法が狭まるから列挙できなくした
2019/04/30(火) 19:07:56.66ID:???
JavaScriptの良い参考書を教えてください。
2019/04/30(火) 19:09:59.57ID:???
>>170
日本語だとないね。
2019/04/30(火) 19:57:01.94ID:???
>>170
https://www.amazon.co.jp/dp/4873115736
古いが、ここにしか書いてない情報も結構あるので無駄にはならないかと
2019/04/30(火) 21:50:50.88ID:???
初めてのJavaScript 第3版 ――ES2015以降の最新ウェブ開発、オライリー、2017

ただし、この本はプロ向け!
5言語以上やっていない人には、無理
2019/04/30(火) 22:11:23.03ID:???
>>173
自分が分からなかったってことね。哀れな糖質だなぁw
2019/04/30(火) 22:36:11.76ID:???
>>170
Webだけで事足りる
http://www.ecma-international.org/ecma-262/9.0/
2019/04/30(火) 22:54:03.46ID:???
>>174
自信家の君には最新仕様を読む権利を与えよう
http://exploringjs.com/es2018-es2019/index.html
177Name_Not_Found
垢版 |
2019/05/01(水) 09:00:02.49ID:CKndIQuo
>>173
5言語も要らねえだろ
2019/05/01(水) 09:13:30.08ID:???
一芸に熟達せよ 多芸を欲張るものは巧みならず
2019/05/01(水) 10:46:10.82ID:???
WebやJSは色んなパラダイムや内部的な仕組みを学びやすい言語だから
極めれば5言語習得したのと同じ分の経験が得られる
180Name_Not_Found
垢版 |
2019/05/01(水) 11:19:44.58ID:uE1ixmtJ
ウェブとは関係ないとあるレポートをhtml形式で
出力するツールを作ってるんですけど、
ローカルの任意のテキストファイルって読み込めるんでしたっけ?

読み込めないなら読み込めないで、jsファイル(json)で
出力すればできるのわかってるんだけど、出力する側は
jsonじゃないほうが楽なので
181Name_Not_Found
垢版 |
2019/05/01(水) 13:33:55.94ID:kGx2uNnL
firefoxとchrome向けのクライアントサイドのjs書いてます
2000行くらいでまとまった処理をfunctionにしてるくらいです。
全部1つのクラスに入れちゃおうかと思ったけどいまいち利点が見つからず。
特にパフォーマンスは求めておらず、テスト、保守・拡張に優れた書き方
で参考になるデザインパターンやウェブや本あったら教えてください。
182Name_Not_Found
垢版 |
2019/05/01(水) 14:36:50.65ID:uE1ixmtJ
コード見せてくれれば、レビューするかもしれんぞ
2019/05/01(水) 14:47:42.45ID:???
>>180
File API
2019/05/01(水) 17:31:44.31ID:???
>>180
かなり最近の機能だけどchooseFileSystemEntries()を使って
一回だけユーザーにフォルダ選んでもらってIndexedDBにハンドルを保存しとけば
以降File System APIとFile Writer API使うことでそのフォルダの中身を好きに読み書きできるようになった
2019/05/01(水) 19:09:10.82ID:???
回答を放置する質問者ばっか
2019/05/01(水) 19:12:39.66ID:???
ファイルダウンロードするだけなのにChromeとFirefoxとSafariとIEで全部方法が違うとか、このレベルでブラウザ毎に変えるなよ
2019/05/01(水) 19:18:48.96ID:???
ダウンロードするだけならdownload属性を使うのでいい
ただmobile SafariではblobURLに制限があったりセキュリティのなんちゃらに
引っかかるのがマジうざいから対応しないこともあるけど
2019/05/01(水) 19:40:30.04ID:???
煽って回答を引き出す奴に構ってやるなよ…
まあ、こういう奴ばかりだから廃れたんだろうな
2019/05/01(水) 20:21:53.13ID:???
昔は回答者が質問というか話題を出す所謂だべり場で
新参の質問者は初心者です、話の途中で申し訳ないけれど、この質問も聞いてほしい
という感じで質問するんだけどスレの流れがあまりに早すぎるのもあって
よく無視されてて質問者を大事にしようよという声もしばしば上がってた
今廃れたのはそういうイキリくんが大人になったか死んだかで
荒らしも減ったし要するにヘタレしか残ってないから
2019/05/01(水) 20:25:03.29ID:???
>>189
昔から初心者にも回答はされてたよ
質問者がいつまで経っても出てこないから、回答者同士でだべってた感はあるけどね
流れが早くても質問者が返事を出せばよかったのに、とは当時からよく思ってた
2019/05/01(水) 20:26:35.55ID:???
JSの今や未来に興味がない向上心の欠片もないおっさんしか残ってないからでしょ
今なんてデコレータとか昔より沢山話題があるのに誰も興味を持って話す人がいない
いつでもライブラリや素朴な質問の繰り返しのみ
そんなんで活気が出るわけがない
2019/05/01(水) 20:27:22.27ID:???
>>187みたいなのは愚痴であって、質問じゃない
193192
垢版 |
2019/05/01(水) 20:28:42.72ID:aB77wAe5
間違えた
質問じゃないのは>>186
2019/05/01(水) 20:31:46.58ID:???
>>190
俺はpart2,30のころからいるが
一時期は2日でスレが埋まることもあるくらい勢いがあったんだよ
そこまで行かなくても3,4人が喧嘩してるだけでスレが流れていっていた
JSスレも4つ5つ経ってて、今では珍しい前スレへの安価は勿論別スレへの安価や誤爆も頻繁にあった
質問への回答が付くのも何十何百レス後で、それじゃあ質問者が離れても仕方ないねというムードだった
それでも当時の質問者は律儀に返すやつも多かった
なぜなら普段回答もするスレの住人がよく質問もしてたからだ
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況