>>319
これか。確かに俺が確認したのと同じ事だな。
http://os0x.hatenablog.com/entry/20100916/1284650917
JavaScript情報交換所(プログラミング既習者専用) [無断転載禁止]©2ch.net
322デフォルトの名無しさん
2016/07/18(月) 02:42:22.09ID:CK8ZYmxh323デフォルトの名無しさん
2016/07/18(月) 02:45:40.64ID:UhcVRSnP324デフォルトの名無しさん
2016/07/18(月) 02:47:05.64ID:CK8ZYmxh >>321
まあ今のお前にいくら言っても分からないとは思うが、必要なのは、
「構造的」簡潔さなんだよ。
「記述的」簡潔さではない。
もちろん記述も簡潔な方がいいんだけどね。
とはいえ、構造が簡潔なら記述が複雑になることもないんだよ。
とにかくお前は大きいのをまずは書いてみることだよ。
そうすれば色々と至らなさが分かると思うよ。
まあ今のお前にいくら言っても分からないとは思うが、必要なのは、
「構造的」簡潔さなんだよ。
「記述的」簡潔さではない。
もちろん記述も簡潔な方がいいんだけどね。
とはいえ、構造が簡潔なら記述が複雑になることもないんだよ。
とにかくお前は大きいのをまずは書いてみることだよ。
そうすれば色々と至らなさが分かると思うよ。
325デフォルトの名無しさん
2016/07/18(月) 02:49:44.99ID:CK8ZYmxh326デフォルトの名無しさん
2016/07/18(月) 03:01:24.39ID:vbFE3yAk また殺人くん呼ばわりのあのアホかな。
あのな、DateTimeというのは、日付と時間だよな。ある一点を指し示す値だ。もっと詳しく言えば、ある内部値を、日付と時間として扱えるようにしたオブジェクトだ。
その、「ある一点を指し示す日付と時間同士を、四則演算する」って凄くナンセンスだと思わない?
ある一点と、ある一点の間の距離は、numberか?
違うよな。
.net見てみろよ。TimeSpan型がある。
例外とかそういう馬鹿な話じゃない。
頭の中を整理して、できて良いかできてはいけないのか精査せえ。
何故getTimeしてるかわからんのか?
エポックとして、一点の情報ではなくなり、原点からの長さとして値を返してると考えるとことができる秒に変換しとるよな。要はベクトルに。
お前高校数学からやり直してこいよ。
あのな、DateTimeというのは、日付と時間だよな。ある一点を指し示す値だ。もっと詳しく言えば、ある内部値を、日付と時間として扱えるようにしたオブジェクトだ。
その、「ある一点を指し示す日付と時間同士を、四則演算する」って凄くナンセンスだと思わない?
ある一点と、ある一点の間の距離は、numberか?
違うよな。
.net見てみろよ。TimeSpan型がある。
例外とかそういう馬鹿な話じゃない。
頭の中を整理して、できて良いかできてはいけないのか精査せえ。
何故getTimeしてるかわからんのか?
エポックとして、一点の情報ではなくなり、原点からの長さとして値を返してると考えるとことができる秒に変換しとるよな。要はベクトルに。
お前高校数学からやり直してこいよ。
327デフォルトの名無しさん
2016/07/18(月) 03:02:19.26ID:vbFE3yAk328デフォルトの名無しさん
2016/07/18(月) 03:11:07.49ID:UhcVRSnP329デフォルトの名無しさん
2016/07/18(月) 03:13:48.33ID:UhcVRSnP いま普及している言語で、完璧な
構造的簡潔さとやらを備えてる言語ってなんだろうねw
重要なのは道具として使えることだよ。
道具として使えるならば簡潔でなくても良かった。
そうやって、制限のある中で今まで
実現してきたんだって。
構造的簡潔さとやらを備えてる言語ってなんだろうねw
重要なのは道具として使えることだよ。
道具として使えるならば簡潔でなくても良かった。
そうやって、制限のある中で今まで
実現してきたんだって。
330デフォルトの名無しさん
2016/07/18(月) 05:04:13.15ID:FfTrxk2L >>325
ES.nextでvalue-objectやらvalue-proxy、もしくは演算子オーバーロードが議論されてるよ。
まあとは言え今のDateをそのまま対応させるのはナンセンスだし、いろいろ問題あるから、
サフィックスで数値型を拡張できる優秀な案を使って、
1s -> <time>(1s)
2016Y+7M+18D -> <time>(1468767600000s)
3s - 1s -> <time>(2s)
date - 1s -> <date>
の用にできる。
まあその場合もgetTimeが要らなくなるわけじゃない、
勿論今でも単項+演算子使えば要らないので、要らないの定義によるが、
君は結局もっといい形があるじゃん、と言いたいのか、なんなのかよくわからないな。
ES.nextでvalue-objectやらvalue-proxy、もしくは演算子オーバーロードが議論されてるよ。
まあとは言え今のDateをそのまま対応させるのはナンセンスだし、いろいろ問題あるから、
サフィックスで数値型を拡張できる優秀な案を使って、
1s -> <time>(1s)
2016Y+7M+18D -> <time>(1468767600000s)
3s - 1s -> <time>(2s)
date - 1s -> <date>
の用にできる。
まあその場合もgetTimeが要らなくなるわけじゃない、
勿論今でも単項+演算子使えば要らないので、要らないの定義によるが、
君は結局もっといい形があるじゃん、と言いたいのか、なんなのかよくわからないな。
331デフォルトの名無しさん
2016/07/18(月) 23:56:44.27ID:CK8ZYmxh >>330
基本的には
・getTime要らないなら何故いちいち付いているのか?(全員付けているのか)
・今確かに動いているが本当に引き算は出来るのか?(仕様内なのか)
の確認だから。
今の仕様でもそんなに悪くないけど、直交してないから実装に負担がかかる。
とはいえ今更変更することは無理だし、
新仕様を検討している連中はこの辺全て分かっているだろうから、見守るしかないね。
なおgetTimeが要らないといっているのは引き算時限定であって、(これは経緯を見れば分かるはずだが)
やっぱりlodash君は「前との関連で」の会話が出来ないんだな。
多分ガチのアスペなんだと思う。
とはいえここは匿名掲示板なんだから、俺たちがアスペに対して気を使う必要はない。
(個人を特定して気を使う必要はない)
過去の発言は全部読めるのだから、ちゃんと読み直して付いてこいとしか言えんね。
lodash君の会話の組み立て方では普通は荒らし扱いされる。
それは読み直すことによって多少は改善するから、まずはそれを心がけることだ。
という書き方だと伝わらないのかな?
まあしかしこれ以上面倒見れんが。
基本的には
・getTime要らないなら何故いちいち付いているのか?(全員付けているのか)
・今確かに動いているが本当に引き算は出来るのか?(仕様内なのか)
の確認だから。
今の仕様でもそんなに悪くないけど、直交してないから実装に負担がかかる。
とはいえ今更変更することは無理だし、
新仕様を検討している連中はこの辺全て分かっているだろうから、見守るしかないね。
なおgetTimeが要らないといっているのは引き算時限定であって、(これは経緯を見れば分かるはずだが)
やっぱりlodash君は「前との関連で」の会話が出来ないんだな。
多分ガチのアスペなんだと思う。
とはいえここは匿名掲示板なんだから、俺たちがアスペに対して気を使う必要はない。
(個人を特定して気を使う必要はない)
過去の発言は全部読めるのだから、ちゃんと読み直して付いてこいとしか言えんね。
lodash君の会話の組み立て方では普通は荒らし扱いされる。
それは読み直すことによって多少は改善するから、まずはそれを心がけることだ。
という書き方だと伝わらないのかな?
まあしかしこれ以上面倒見れんが。
332デフォルトの名無しさん
2016/07/19(火) 00:27:47.65ID:gHzhdyCj > ・getTime要らないなら何故いちいち付いているのか?(全員付けているのか)
たまたま
> ・今確かに動いているが本当に引き算は出来るのか?(仕様内なのか)
仕様に書いているのだから、仕様通り
たまたま
> ・今確かに動いているが本当に引き算は出来るのか?(仕様内なのか)
仕様に書いているのだから、仕様通り
333デフォルトの名無しさん
2016/07/19(火) 00:39:36.64ID:gHzhdyCj > なおgetTimeが要らないといっているのは引き算時限定であって、(これは経緯を見れば分かるはずだが)
他にどんな演算子があるかぐらい調べろよw
new Date() / 1
new Date() * 1
new Date() % 10
new Date() ** 1
+new Date()
-new Date()
~new Date()
new Date() > 0 (< <= >= も同様)
new Date() << 1 (>> >>> も同様)
new Date() & 1
new Date() | 1
new Date() ^ 1
これらも仕様通りgetTime()はいらない。
というか逆に+のときだけgetTime()が必要と思ったほうが良いぐらい。
+は文字列結合と数値の加算の二つの意味があるから、仕方なくこうなってしまったという話。
(それ以外は二つの意味はない)
他にどんな演算子があるかぐらい調べろよw
new Date() / 1
new Date() * 1
new Date() % 10
new Date() ** 1
+new Date()
-new Date()
~new Date()
new Date() > 0 (< <= >= も同様)
new Date() << 1 (>> >>> も同様)
new Date() & 1
new Date() | 1
new Date() ^ 1
これらも仕様通りgetTime()はいらない。
というか逆に+のときだけgetTime()が必要と思ったほうが良いぐらい。
+は文字列結合と数値の加算の二つの意味があるから、仕方なくこうなってしまったという話。
(それ以外は二つの意味はない)
334デフォルトの名無しさん
2016/07/19(火) 00:48:15.24ID:gHzhdyCj > 今の仕様でもそんなに悪くないけど、直交してないから実装に負担がかかる。
> とはいえ今更変更することは無理だし、
直すならばDateの仕様ではなく、+オペレーターの方。
Perlみたく、+ は数値演算、 . で文字列結合 とするしかない。
> とはいえ今更変更することは無理だし、
直すならばDateの仕様ではなく、+オペレーターの方。
Perlみたく、+ は数値演算、 . で文字列結合 とするしかない。
335デフォルトの名無しさん
2016/07/19(火) 01:05:34.97ID:gHzhdyCj どうやら俺の発言が気に食わないようだが
俺に比べて技術と知識も劣ってるから、
getTimeがいらないのは引き算限定とかいう
発言で反論しようとするんだよなw
一般論として技術力が高い人ほど多くのことを
知っているんだよ。知ってるからこそ技術力も高くなる。
関数型プログラミングはいいよ。コードがシンプルになる。
lodashやjQueryは便利なライブラリ。
俺に比べて技術と知識も劣ってるから、
getTimeがいらないのは引き算限定とかいう
発言で反論しようとするんだよなw
一般論として技術力が高い人ほど多くのことを
知っているんだよ。知ってるからこそ技術力も高くなる。
関数型プログラミングはいいよ。コードがシンプルになる。
lodashやjQueryは便利なライブラリ。
336デフォルトの名無しさん
2016/07/19(火) 02:25:00.57ID:9Xihfq37 相変わらずアスペ全開だな。
まあついでに言っておくと、JavaScriptの連中は仕様書を書いている連中すらゴミだってことだ。
オブジェクト指向を理解出来てない。
Type固有の案件は全部15章に突っ込まないと駄目だ。
11章の演算子(+)に書くとか、親クラスのメソッドに子クラス毎にif文入れているようなものだ。
あの仕様書では頭からお尻まで全部読まないと理解できない。典型的な駄目コードだ。
だから俺も読み込むまでに余分に時間がかかった。
var Object = {
operator+: funciton() {
if (typeof(this)==='Date') // 11.6.1 NOTE1 // 現行仕様書
}};
var Date = {
operator+: function() { // 15.9.X // こっちに書くべき
}};
Type固有の例外規定が15章に書いてない時点で仕様書の構造がゴミ。
但し書きはダブって良いので、15章にも書き、そっちがオリジナルであるべき。
上記上側みたいに、Dateオブジェクトの特別扱いを、子クラスでメソッドをオーバライドせず、
親クラスのメソッドにいちいちif文入れてこられたらキレるだろ?
上記下側のように、子クラスでオーバライドした上で、
親クラスのメソッドに「Date型ではオーバライドされています」とコメントを付けておくべき。
まあついでに言っておくと、JavaScriptの連中は仕様書を書いている連中すらゴミだってことだ。
オブジェクト指向を理解出来てない。
Type固有の案件は全部15章に突っ込まないと駄目だ。
11章の演算子(+)に書くとか、親クラスのメソッドに子クラス毎にif文入れているようなものだ。
あの仕様書では頭からお尻まで全部読まないと理解できない。典型的な駄目コードだ。
だから俺も読み込むまでに余分に時間がかかった。
var Object = {
operator+: funciton() {
if (typeof(this)==='Date') // 11.6.1 NOTE1 // 現行仕様書
}};
var Date = {
operator+: function() { // 15.9.X // こっちに書くべき
}};
Type固有の例外規定が15章に書いてない時点で仕様書の構造がゴミ。
但し書きはダブって良いので、15章にも書き、そっちがオリジナルであるべき。
上記上側みたいに、Dateオブジェクトの特別扱いを、子クラスでメソッドをオーバライドせず、
親クラスのメソッドにいちいちif文入れてこられたらキレるだろ?
上記下側のように、子クラスでオーバライドした上で、
親クラスのメソッドに「Date型ではオーバライドされています」とコメントを付けておくべき。
337デフォルトの名無しさん
2016/07/19(火) 02:25:35.18ID:9Xihfq37 お前らの大半はこれにすら気づけないと見ている。
正直、JavaScriptの連中が上達してないのはかなり根が深い問題だと認識し始めてる。
仕様書すらこれだ。
多分君らの大半は何が良いコードなのかも理解出来ていない。
それはまともな構成の仕様書/コードを見たことがないからだ。
これについては、丁度OOPのスレでそれを問う勇者がいたから見てくるといい。(今は死にスレだが)
http://echo.2ch.net/test/read.cgi/tech/1467992113/10
http://echo.2ch.net/test/read.cgi/tech/1467992113/65
例えば仕様書だけでもまともであれば、
無意識的にオブジェクト指向を学習出来たはずなのだが、そうなっていない。
この酷い仕様書を読むまでは気づかなかったが、
当たり前だが他言語の仕様書は達人が書いているので、こうはなっていない。
だから仕様書を読んでいれば無意識的に
オブジェクト指向(正確には著者のプログラミングスタイル)も学習していける。
JavaScriptにはこれがない。つまるところ、教科書が悪いから上達しにくい。
それでも、他人のコードをほぼ全て見える状況は、おつりが来るほど有利だとも思うのだが。
正直、JavaScriptの連中が上達してないのはかなり根が深い問題だと認識し始めてる。
仕様書すらこれだ。
多分君らの大半は何が良いコードなのかも理解出来ていない。
それはまともな構成の仕様書/コードを見たことがないからだ。
これについては、丁度OOPのスレでそれを問う勇者がいたから見てくるといい。(今は死にスレだが)
http://echo.2ch.net/test/read.cgi/tech/1467992113/10
http://echo.2ch.net/test/read.cgi/tech/1467992113/65
例えば仕様書だけでもまともであれば、
無意識的にオブジェクト指向を学習出来たはずなのだが、そうなっていない。
この酷い仕様書を読むまでは気づかなかったが、
当たり前だが他言語の仕様書は達人が書いているので、こうはなっていない。
だから仕様書を読んでいれば無意識的に
オブジェクト指向(正確には著者のプログラミングスタイル)も学習していける。
JavaScriptにはこれがない。つまるところ、教科書が悪いから上達しにくい。
それでも、他人のコードをほぼ全て見える状況は、おつりが来るほど有利だとも思うのだが。
338デフォルトの名無しさん
2016/07/19(火) 03:43:57.22ID:pXKjqsL9 上達くんはトリップ付けてくれよ
339デフォルトの名無しさん
2016/07/19(火) 04:38:03.16ID:gHzhdyCj 自分の能力不足を仕様のせいにまでしてきたねw
340デフォルトの名無しさん
2016/07/19(火) 04:50:08.67ID:gHzhdyCj Dateにオペレータ+を書くとかさ間抜けすぎるっていうかw
世の中にはいろんな言語があるってことを知らないんじゃないかねぇ。
そして最高の言語があるとか思ってるんじゃないかねぇ。
JavaScriptにおいて演算子はクラスのメソッド(相当)ではない。
演算子のオーバーロードがないのもクラスのメソッドじゃないからだ。
だから演算子が特定のクラスにつくことはない。
もし+演算子がクラスのメソッドであれば、それはクラスごとに変更可能であるはずだ。
また戻り値も好きに変えられるはずだ。(例えばComplex型+Complex型の結果をComplex型にする等)
だけどJavaScriptではそれは出来ない。といったらJavaScriptは劣ってるとか言うんだろうな(苦笑)
これは言語のコンセプトの違いでしか無い。スクリプト言語としてそういう設計になってる。
JavaScriptにおいて演算の結果は文字列か数値にしかならない。(厳密に言えばNaNとかもあるが)
演算子はクラスメソッドではなく、演算子が使われた段階でオブジェクトはプリミティブ型に変換される。
Date型に対して+メソッドが呼ばれるのではなく、プリミティブ型への変換メソッド(valueOf)が呼ばれる。
その後に演算子の効果が働く。
な? 能力が低いんだよこいつは。
自分の知ってる○○の言語の常識でしか考えることが出来ない。
世の中にはいろんな言語があるってことを知らないんじゃないかねぇ。
そして最高の言語があるとか思ってるんじゃないかねぇ。
JavaScriptにおいて演算子はクラスのメソッド(相当)ではない。
演算子のオーバーロードがないのもクラスのメソッドじゃないからだ。
だから演算子が特定のクラスにつくことはない。
もし+演算子がクラスのメソッドであれば、それはクラスごとに変更可能であるはずだ。
また戻り値も好きに変えられるはずだ。(例えばComplex型+Complex型の結果をComplex型にする等)
だけどJavaScriptではそれは出来ない。といったらJavaScriptは劣ってるとか言うんだろうな(苦笑)
これは言語のコンセプトの違いでしか無い。スクリプト言語としてそういう設計になってる。
JavaScriptにおいて演算の結果は文字列か数値にしかならない。(厳密に言えばNaNとかもあるが)
演算子はクラスメソッドではなく、演算子が使われた段階でオブジェクトはプリミティブ型に変換される。
Date型に対して+メソッドが呼ばれるのではなく、プリミティブ型への変換メソッド(valueOf)が呼ばれる。
その後に演算子の効果が働く。
な? 能力が低いんだよこいつは。
自分の知ってる○○の言語の常識でしか考えることが出来ない。
341デフォルトの名無しさん
2016/07/19(火) 04:57:24.04ID:gHzhdyCj Dateにoperator+を書くべきじゃないと言ったが、
もちろんObjectにも書くべきじゃない。
>>336はさも、Objectにoperator+があるのが
現行の仕様だと言っているが、現行の仕様は
Objectにoperator+なんてものは存在しない。
ObjectにあるのはvalueOfメソッドだ。
そしてObjectのvalueOfメソッドに if Dateなら?みたいなコードはない。
Operator+解釈のアルゴリズムの結果、Date型のvalueOfメソッドが呼ばれるだけだ。
Operator+の処理が実行されるのは、Object(やDate)のメソッドが呼び出される前だ。
それは仕様を読めばわかること。
だからこそ15章 Native ECMAScript objects ではなく、
11章 Expressions に分離して書かれているのだ。
もちろんObjectにも書くべきじゃない。
>>336はさも、Objectにoperator+があるのが
現行の仕様だと言っているが、現行の仕様は
Objectにoperator+なんてものは存在しない。
ObjectにあるのはvalueOfメソッドだ。
そしてObjectのvalueOfメソッドに if Dateなら?みたいなコードはない。
Operator+解釈のアルゴリズムの結果、Date型のvalueOfメソッドが呼ばれるだけだ。
Operator+の処理が実行されるのは、Object(やDate)のメソッドが呼び出される前だ。
それは仕様を読めばわかること。
だからこそ15章 Native ECMAScript objects ではなく、
11章 Expressions に分離して書かれているのだ。
342デフォルトの名無しさん
2016/07/19(火) 09:44:05.11ID:Lmd4i1Ew >>336
仕様書が変に構造化されてて読みにくいのは非常にその通り。
でもES2015以降徐々に改善されて行ってるよ。
そういう意味でも最新の仕様書を読んだほうが良い。
で、確かに@@toPrimitiveはビルトインではDateとSymbolくらいにしかついていないので特有だが、
別にこれは外したり自由に付けたりもできるし、処理の流れの中で例外というわけでもない。
仕様書が変に構造化されてて読みにくいのは非常にその通り。
でもES2015以降徐々に改善されて行ってるよ。
そういう意味でも最新の仕様書を読んだほうが良い。
で、確かに@@toPrimitiveはビルトインではDateとSymbolくらいにしかついていないので特有だが、
別にこれは外したり自由に付けたりもできるし、処理の流れの中で例外というわけでもない。
343デフォルトの名無しさん
2016/07/19(火) 17:59:10.43ID:Ll9Tyf8R 頭おかしいのかな。
オブジェクト指向でも、クラス指向ではない。
型は無いに等しい。アヒルの様に鳴き、アヒルの様に歩けば、それはアヒルである、という「見做し」を代わりに使用する。
この2つだけで、何故演算子がその時と場合で意味が変わるか、理解出来るんじゃなかろうか。
知能低すぎなのは、その程度で関数型とか言っちゃってる脳味噌じゃねえの?
valueOfは、見做しの典型だろ。
どんなオブジェクトであれ、どんな経緯でプロトタイプがチェーンされていても、それを辿って一番最初に見つかったvalueOfが使われるんだから。
オブジェクト指向でも、クラス指向ではない。
型は無いに等しい。アヒルの様に鳴き、アヒルの様に歩けば、それはアヒルである、という「見做し」を代わりに使用する。
この2つだけで、何故演算子がその時と場合で意味が変わるか、理解出来るんじゃなかろうか。
知能低すぎなのは、その程度で関数型とか言っちゃってる脳味噌じゃねえの?
valueOfは、見做しの典型だろ。
どんなオブジェクトであれ、どんな経緯でプロトタイプがチェーンされていても、それを辿って一番最初に見つかったvalueOfが使われるんだから。
344デフォルトの名無しさん
2016/07/19(火) 19:56:18.15ID:Lmd4i1Ew まあそういう挙動が変だ、嫌だって言うなら
delete Date.prototype[Symbol.toPrimitive]
すれば変えられる。
誰かは言わないけど世の中には
delete Object.prototype.__proto__
とか嫌いで許せない物をまず削ってから始める派の人も居るみたいだしね。
delete Date.prototype[Symbol.toPrimitive]
すれば変えられる。
誰かは言わないけど世の中には
delete Object.prototype.__proto__
とか嫌いで許せない物をまず削ってから始める派の人も居るみたいだしね。
345デフォルトの名無しさん
2016/07/20(水) 00:55:34.54ID:uzXTbo4C >>344
そー。
if Dateとかナンセンスすぎんのよ。
とりあえずvalueOf呼んで、その実装が誰のものかどのインスタンスのものかなんか気にせず、帰ってきたのが値で、
それ以上でもそれ以下でも無い。
クラスのメソッドとか脳味噌の代わりにウニ詰まってるレベル。
オブジェクトか、オブジェクトのプロトタイプのプロパティに
functionが入ってるだけであって、クラス()のメソッド()でも何でも無い。
関数を一級市民とみなす関数型言語erが、まさかの関数をメソッドと特別扱いするとは。
演算子は演算子であって、それ以上でもそれ以下でもない。その後に効果が働くも何も、それ以外の役には立たんから演算子として、言語として定義されとんのだ。
そー。
if Dateとかナンセンスすぎんのよ。
とりあえずvalueOf呼んで、その実装が誰のものかどのインスタンスのものかなんか気にせず、帰ってきたのが値で、
それ以上でもそれ以下でも無い。
クラスのメソッドとか脳味噌の代わりにウニ詰まってるレベル。
オブジェクトか、オブジェクトのプロトタイプのプロパティに
functionが入ってるだけであって、クラス()のメソッド()でも何でも無い。
関数を一級市民とみなす関数型言語erが、まさかの関数をメソッドと特別扱いするとは。
演算子は演算子であって、それ以上でもそれ以下でもない。その後に効果が働くも何も、それ以外の役には立たんから演算子として、言語として定義されとんのだ。
346デフォルトの名無しさん
2016/07/20(水) 02:05:37.37ID:eZynd/Sj >>342
> 処理の流れの中で例外というわけでもない
俺が言っているのは、ToPrimitiveを呼ぶことではなくて、
ToPrimitiveのデフォルト値がTypeによって異なっていることだ。
ただしこれについては俺も>>336内では間違っていた。正確には以下。
var Object = {
ToPrimitive: funciton(hint) { // 9.1
if (typeof(this)==='Date') // 11.6.1 NOTE1 // ES5.1仕様書
}};
つまり、15.9 に書くべき内容が、次点の 9.1 にも書いてなくて、 11.6.1 に書いてある。
二重に落とし穴になっている。
そして、当たり前だがNOTE1が例外だと言っている。
というか例外じゃなければNOTEの意味無いだろ。
仕様書のおかしな構造は、おそらく仕様書それ自体を書いたわけではなくて、実装から起こしたからだ。
だから仕様書として妥当な場所ではなく、それが実装してある場所に記述があるのだろう。
とはいえその場合でもこのNOTE1の内容なら 9.1 にあるべきであって、
いずれにしても 11.6.1 にあるのはかなり謎なのだが。
そして、実装から起こすにしても、まともな実装ならそのまま仕様書に焼き直しても上手く行く。
いずれにしてもアレなんだろうさ。
NOTE1(仮): Dateの場合はhintにStringを与えて呼び出す // 11.6.1 にあっても不思議ではない、
// 336の俺の勘違いはこれ、11.6.1にある点と整合させる為に脳内変換してしまった
NOTE1(ES5.1仕様書): ToPrimitiveはhint無しの場合、
Date以外はNumberが、
DateはStringがhintに与えられたものと見なす
// ToPrimitiveの動作説明を(+)の説明内に配置?意味不明
// しかもToPrimitiveの場所(9.1)にはこの説明は無しかよ!マジで頭おかしい
> 処理の流れの中で例外というわけでもない
俺が言っているのは、ToPrimitiveを呼ぶことではなくて、
ToPrimitiveのデフォルト値がTypeによって異なっていることだ。
ただしこれについては俺も>>336内では間違っていた。正確には以下。
var Object = {
ToPrimitive: funciton(hint) { // 9.1
if (typeof(this)==='Date') // 11.6.1 NOTE1 // ES5.1仕様書
}};
つまり、15.9 に書くべき内容が、次点の 9.1 にも書いてなくて、 11.6.1 に書いてある。
二重に落とし穴になっている。
そして、当たり前だがNOTE1が例外だと言っている。
というか例外じゃなければNOTEの意味無いだろ。
仕様書のおかしな構造は、おそらく仕様書それ自体を書いたわけではなくて、実装から起こしたからだ。
だから仕様書として妥当な場所ではなく、それが実装してある場所に記述があるのだろう。
とはいえその場合でもこのNOTE1の内容なら 9.1 にあるべきであって、
いずれにしても 11.6.1 にあるのはかなり謎なのだが。
そして、実装から起こすにしても、まともな実装ならそのまま仕様書に焼き直しても上手く行く。
いずれにしてもアレなんだろうさ。
NOTE1(仮): Dateの場合はhintにStringを与えて呼び出す // 11.6.1 にあっても不思議ではない、
// 336の俺の勘違いはこれ、11.6.1にある点と整合させる為に脳内変換してしまった
NOTE1(ES5.1仕様書): ToPrimitiveはhint無しの場合、
Date以外はNumberが、
DateはStringがhintに与えられたものと見なす
// ToPrimitiveの動作説明を(+)の説明内に配置?意味不明
// しかもToPrimitiveの場所(9.1)にはこの説明は無しかよ!マジで頭おかしい
347デフォルトの名無しさん
2016/07/20(水) 02:06:29.35ID:eZynd/Sj さてES7仕様書を確認してみた。確かに大幅改訂されている。
7.1.1のToPrimitiveの所にNOTEがある。(改善あり)
12.8.3の + の所にはこれまでどおりのNOTE記述、まあこれはあった方がいい。
20.3.4.45にはDate.prototype[@@toPrimitive](hint)が追加されている。(改善あり)
結果、俺が問題だと思った点は全て改善され、妥当な配置になっている。
> そういう意味でも最新の仕様書を読んだほうが良い
ああその通りだ。今後俺はそうするよ。少なくともES5.1仕様書はゴミだ。
> 別にこれは外したり自由に付けたりもできるし、処理の流れの中で例外というわけでもない
それは完全に後付だよ。とはいえ妥当な解決策ではあるが。
最初からNumberならこの部分自体が丸々要らない。
無駄仕様で無駄に膨らむ駄目パターンの典型だ。
とはいえ、ES7には今のところ問題点はないね。
俺もこの解決策を採るだろうし、仕様書としても今現在俺が検出した問題点は全て解決済みだ。
徐々に改善されているのは事実だね。
ただまあ、20年も経とうとしているのにこのレベルの改善を未だにやっていること自体が問題だが。
他言語の仕様/仕様書なら、最初からこんな問題は存在しない。
というか、ブレンダン・アイクは何で仕様書を書かなかったんだろう?
彼が第1版を書けばこんな事にはならなかったはずなんだよ。
>>344
ググったらヒットした。で、試してみた。
が、効果あるか?特に何も変わらない気がするが。
ES6フラグとか指定必要?
7.1.1のToPrimitiveの所にNOTEがある。(改善あり)
12.8.3の + の所にはこれまでどおりのNOTE記述、まあこれはあった方がいい。
20.3.4.45にはDate.prototype[@@toPrimitive](hint)が追加されている。(改善あり)
結果、俺が問題だと思った点は全て改善され、妥当な配置になっている。
> そういう意味でも最新の仕様書を読んだほうが良い
ああその通りだ。今後俺はそうするよ。少なくともES5.1仕様書はゴミだ。
> 別にこれは外したり自由に付けたりもできるし、処理の流れの中で例外というわけでもない
それは完全に後付だよ。とはいえ妥当な解決策ではあるが。
最初からNumberならこの部分自体が丸々要らない。
無駄仕様で無駄に膨らむ駄目パターンの典型だ。
とはいえ、ES7には今のところ問題点はないね。
俺もこの解決策を採るだろうし、仕様書としても今現在俺が検出した問題点は全て解決済みだ。
徐々に改善されているのは事実だね。
ただまあ、20年も経とうとしているのにこのレベルの改善を未だにやっていること自体が問題だが。
他言語の仕様/仕様書なら、最初からこんな問題は存在しない。
というか、ブレンダン・アイクは何で仕様書を書かなかったんだろう?
彼が第1版を書けばこんな事にはならなかったはずなんだよ。
>>344
ググったらヒットした。で、試してみた。
が、効果あるか?特に何も変わらない気がするが。
ES6フラグとか指定必要?
348デフォルトの名無しさん
2016/07/20(水) 02:09:56.99ID:eZynd/Sj あ、ちなみに試したのは後者、間違いないようにもう一度書いておくと、以下ね。
> delete Object.prototype.__proto__
とりあえず期待した効果がない(気がする)
> delete Object.prototype.__proto__
とりあえず期待した効果がない(気がする)
349デフォルトの名無しさん
2016/07/20(水) 02:15:43.13ID:E+SEwayU > 他言語の仕様/仕様書なら、最初からこんな問題は存在しない。
そんなわけねーだろw
どんな言語でも最初は汚いし
完璧な言語はない。
なによりお前、他の言語と言ってるが、
じゃあ具体的にどの言語だよ?
どうせしらんだろ
そんなわけねーだろw
どんな言語でも最初は汚いし
完璧な言語はない。
なによりお前、他の言語と言ってるが、
じゃあ具体的にどの言語だよ?
どうせしらんだろ
350デフォルトの名無しさん
2016/07/20(水) 02:31:38.89ID:eZynd/Sj >>344
いじってみると、動作の差異を検出出来た。
delete以降は__proto__指定でのプロトタイプ切り替えは出来なくなる。
ただし、リテラルとしてオブジェクト全体を生成する場合は指定が効くという、
極めて中途半端?な状態になっている。
果たしてこれが仕様なのか、もちろん動作自体ももっと確認しないと怖くて使えないが、
これが仕様であれば、意図は分かるし、最初からこうならこっちの方がいい。
ただ、今現在の動作しているコードの中でこれをやるのは無理だね。副作用が怖すぎる。
(つまり、結論としては、仕様だと確認出来ても使わない)
いじってみると、動作の差異を検出出来た。
delete以降は__proto__指定でのプロトタイプ切り替えは出来なくなる。
ただし、リテラルとしてオブジェクト全体を生成する場合は指定が効くという、
極めて中途半端?な状態になっている。
果たしてこれが仕様なのか、もちろん動作自体ももっと確認しないと怖くて使えないが、
これが仕様であれば、意図は分かるし、最初からこうならこっちの方がいい。
ただ、今現在の動作しているコードの中でこれをやるのは無理だね。副作用が怖すぎる。
(つまり、結論としては、仕様だと確認出来ても使わない)
351デフォルトの名無しさん
2016/07/20(水) 02:40:40.72ID:xVzG2GNh352デフォルトの名無しさん
2016/07/20(水) 03:30:00.35ID:eZynd/Sj B.2.2だろ?
他を見てもアクセサとして実装するところまでは仕様のようだから、
deleteに関しても仕様通りの実装になっていれば同じ動作だろう。
しかしObject.definePropertyを使えば同じ事が副作用無しで出来るのに
わざわざdeleteする意味は何?
他を見てもアクセサとして実装するところまでは仕様のようだから、
deleteに関しても仕様通りの実装になっていれば同じ動作だろう。
しかしObject.definePropertyを使えば同じ事が副作用無しで出来るのに
わざわざdeleteする意味は何?
353デフォルトの名無しさん
2016/07/20(水) 07:46:36.40ID:2oUQ3wZY >>350
まあ多分Object.prototype.__proto__が嫌いな人は
Object.prototypeに余計で醜いの生やすな!って言いたいのもあるだろうから
それで良いんじゃないのかな。
あとまあES仕様は基本的に一箇所に最小限しかかかれていなくて、
慣れていないうちはあっち行ったりこっち行ったりする必要があるが、
逆に言うと基本処理を覚えてパターンに慣れるほどに読みこなしてしまえば、
短い一部を読むだけで理解できるからむしろ楽という事もある。
仕様書いてる人もそうだから、初めて読む人の読みづらさがなかなかわからないんじゃないかな。
まあ多分Object.prototype.__proto__が嫌いな人は
Object.prototypeに余計で醜いの生やすな!って言いたいのもあるだろうから
それで良いんじゃないのかな。
あとまあES仕様は基本的に一箇所に最小限しかかかれていなくて、
慣れていないうちはあっち行ったりこっち行ったりする必要があるが、
逆に言うと基本処理を覚えてパターンに慣れるほどに読みこなしてしまえば、
短い一部を読むだけで理解できるからむしろ楽という事もある。
仕様書いてる人もそうだから、初めて読む人の読みづらさがなかなかわからないんじゃないかな。
354デフォルトの名無しさん
2016/07/20(水) 09:31:33.55ID:E+SEwayU このようにJavaScriptの仕様書っていうのは
よく読まれやすい。読んでいるからこそ苦情も出てくる。
それに対して、他の言語の仕様書は読む気すらおきない
よく読まれやすい。読んでいるからこそ苦情も出てくる。
それに対して、他の言語の仕様書は読む気すらおきない
355デフォルトの名無しさん
2016/07/20(水) 13:30:34.45ID:2oUQ3wZY 処理系と仕様が完全に分離されてるのもどちらかと言うと珍しいのもあるかもな。
RubyやPythonだったら言語学者でもない限りメインの処理系の動き=仕様ということで納得する部分があるが
JSだと沢山の処理系で動くように作らないといけないからね。
各処理系の対応度合いもまちまちだし、1つの処理系だけ取っても変化が早い。
だから言語仕様書を頼ることが多くなるのかもね。
でも言語仕様書はあくまで言語仕様書であり、リファレンスとは違うので誰にでも分り易いものではないね、
RubyやPythonだったら言語学者でもない限りメインの処理系の動き=仕様ということで納得する部分があるが
JSだと沢山の処理系で動くように作らないといけないからね。
各処理系の対応度合いもまちまちだし、1つの処理系だけ取っても変化が早い。
だから言語仕様書を頼ることが多くなるのかもね。
でも言語仕様書はあくまで言語仕様書であり、リファレンスとは違うので誰にでも分り易いものではないね、
356デフォルトの名無しさん
2016/07/20(水) 23:30:45.27ID:E+SEwayU JavaScriptの標準APIがRubyのそれとは違って
大幅に機能が少ないからのは標準化のせいなのかな?
他言語を見習って一気にメソッド増やしてほしいものなんだが。
http://ruby-doc.org/core-2.3.1/Enumerable.html
これらのメソッドの多くがないから、lodashなどに
頼る必要が出てくる。
他言語で標準化されてるならば、JavaScriptに取り入れるかなんて
議論する必要はないと思うんだけどな。
大幅に機能が少ないからのは標準化のせいなのかな?
他言語を見習って一気にメソッド増やしてほしいものなんだが。
http://ruby-doc.org/core-2.3.1/Enumerable.html
これらのメソッドの多くがないから、lodashなどに
頼る必要が出てくる。
他言語で標準化されてるならば、JavaScriptに取り入れるかなんて
議論する必要はないと思うんだけどな。
357デフォルトの名無しさん
2016/07/21(木) 07:48:11.60ID:3EZYXG7o Rubyやらより遥かに後方互換性を切るのが難しいからね。
Rubyやらはなんだかんだ言ってメジャーバージョンアップの時には思い切って互換性を切ることができる。
そこでの一番の問題はユーザーがついてきてくれるかとか、そんなところ。
でもJSは後方互換性を切るとなったら、それが受け入れられるかなんてむしろどうでもよくて、
今あるコンテンツのほぼ全てに影響がないかが大事になる。
それは同等の力を持ったエンジンが複数あり、ユーザーコミュニティではなくエンジン開発陣主体だから。
目線が違うので、便利だから入れようという盛り上がりが起こることは少なく、
今ある特にパフォーマンスや技術的問題を、具体的に解決できる提案が取り入れられやすい。
Rubyやらはなんだかんだ言ってメジャーバージョンアップの時には思い切って互換性を切ることができる。
そこでの一番の問題はユーザーがついてきてくれるかとか、そんなところ。
でもJSは後方互換性を切るとなったら、それが受け入れられるかなんてむしろどうでもよくて、
今あるコンテンツのほぼ全てに影響がないかが大事になる。
それは同等の力を持ったエンジンが複数あり、ユーザーコミュニティではなくエンジン開発陣主体だから。
目線が違うので、便利だから入れようという盛り上がりが起こることは少なく、
今ある特にパフォーマンスや技術的問題を、具体的に解決できる提案が取り入れられやすい。
358デフォルトの名無しさん
2016/08/21(日) 21:25:32.47ID:u7v77FIA IndexedDBでdeleteObjectStoreする時にトランザクションが(仕様上)取れなくて、
そのままdb.close()するとエラーになる時があるんだが、これってどうすればいいのだ?
e.target.errorは以下。e.target.transacsionはnull(IDBFactory.openで呼んだ直後)
target:IDBOpenDBRequest
error:DOMException: The connection was closed.
code:20
message:"The connection was closed."
name:"AbortError"
createObjectStoreはtransactionプロパティがあるのでそれでoncompleteを待てるのだが、
deleteObjectStoreは何故かvoidを返す仕様で、待ちようがない。
ならばそのままクローズで良いのかと思いきや、エラーになる。
https://developer.mozilla.org/en-US/docs/Web/API/IDBDatabase/deleteObjectStore
普通ならIDBDatabase.transactionがプロパティでそこから辿れるはずなのだが、メソッドだし。
deleteの時にトランザクションがないわけがないし、
それにアクセス出来ないのは仕様上の欠陥だと思うが。
createObjectStoreがobjectStoreを返すのは便利で良いが、本来はTransactionを返すべき。
だったら空オブジェクトにtransactionプロパティだけでも付けておいてくれないと対応出来ない。
なおヒット状況は、
1. あらかじめIndexedDBに500個ほどオブジェクトストアを作っておく。
2. open直後にそのうち3つほどを連続して消す。
3. クローズ。
この3のタイミングの取り方が分からない。
IndexDBは初めて使うので、使い方が間違っていたり、
或いは大幅に勘違いしてるかもしれないけど、その辺も含めてよろしく。
なおアプリとしてはもう一度削除されるだけなのでクリティカルな問題ではない。
そのままdb.close()するとエラーになる時があるんだが、これってどうすればいいのだ?
e.target.errorは以下。e.target.transacsionはnull(IDBFactory.openで呼んだ直後)
target:IDBOpenDBRequest
error:DOMException: The connection was closed.
code:20
message:"The connection was closed."
name:"AbortError"
createObjectStoreはtransactionプロパティがあるのでそれでoncompleteを待てるのだが、
deleteObjectStoreは何故かvoidを返す仕様で、待ちようがない。
ならばそのままクローズで良いのかと思いきや、エラーになる。
https://developer.mozilla.org/en-US/docs/Web/API/IDBDatabase/deleteObjectStore
普通ならIDBDatabase.transactionがプロパティでそこから辿れるはずなのだが、メソッドだし。
deleteの時にトランザクションがないわけがないし、
それにアクセス出来ないのは仕様上の欠陥だと思うが。
createObjectStoreがobjectStoreを返すのは便利で良いが、本来はTransactionを返すべき。
だったら空オブジェクトにtransactionプロパティだけでも付けておいてくれないと対応出来ない。
なおヒット状況は、
1. あらかじめIndexedDBに500個ほどオブジェクトストアを作っておく。
2. open直後にそのうち3つほどを連続して消す。
3. クローズ。
この3のタイミングの取り方が分からない。
IndexDBは初めて使うので、使い方が間違っていたり、
或いは大幅に勘違いしてるかもしれないけど、その辺も含めてよろしく。
なおアプリとしてはもう一度削除されるだけなのでクリティカルな問題ではない。
359デフォルトの名無しさん
2016/08/21(日) 22:46:27.65ID:Dn9vwW86 >>358
createもdeleteもversionchangeでしか使えんだろう。
createもdeleteもversionchangeでしか使えんだろう。
360デフォルトの名無しさん
2016/08/21(日) 23:07:56.19ID:u7v77FIA createObjectStoreも単発で作るだけなら同じかもしれないが、それは試していない。
こちらの使い方では以下サンプルの通り、
createObjectStore直後にobjectStore.transaction.completeで書き込みを行っているので、
書き込み側では今のところ問題はない。
> 「データベースを構築する」からの抜粋
> var objectStore = db.createObjectStore("customers", { keyPath: "ssn" });
> objectStore.transaction.oncomplete = function(event) {
> }
> https://developer.mozilla.org/ja/docs/Web/API/IndexedDB_API/Using_IndexedDB#Opening_a_database
ちなみにcreateObjectStoreのtransactionは複数作成しても同一なので
(oncompleteは最後に1回呼ばれるだけ)
おそらくdeleteObjectStoreのトランザクションとも同一。
だからこれが見えれば問題は解決出来るはずなのだが、辿り方が分からない。
(というか仕様上抜けているように見える)
こちらの使い方では以下サンプルの通り、
createObjectStore直後にobjectStore.transaction.completeで書き込みを行っているので、
書き込み側では今のところ問題はない。
> 「データベースを構築する」からの抜粋
> var objectStore = db.createObjectStore("customers", { keyPath: "ssn" });
> objectStore.transaction.oncomplete = function(event) {
> }
> https://developer.mozilla.org/ja/docs/Web/API/IndexedDB_API/Using_IndexedDB#Opening_a_database
ちなみにcreateObjectStoreのtransactionは複数作成しても同一なので
(oncompleteは最後に1回呼ばれるだけ)
おそらくdeleteObjectStoreのトランザクションとも同一。
だからこれが見えれば問題は解決出来るはずなのだが、辿り方が分からない。
(というか仕様上抜けているように見える)
361デフォルトの名無しさん
2016/08/21(日) 23:34:58.54ID:u7v77FIA ちなみにcreateObjectStore/deleteObjectStoreを常用しようとしている。
APIを見る限り、確かにこれは通常想定されている使い方ではないようだが、
versionカウンタが64bit整数だから出来ない使い方でもない。
管理上最適な階層にすると、今回はcreate/deleteを常用する事になる。
だからそれが出来るかどうか試している。(実用に耐えるかどうか)
APIを見る限り、確かにこれは通常想定されている使い方ではないようだが、
versionカウンタが64bit整数だから出来ない使い方でもない。
管理上最適な階層にすると、今回はcreate/deleteを常用する事になる。
だからそれが出来るかどうか試している。(実用に耐えるかどうか)
362デフォルトの名無しさん
2016/08/21(日) 23:35:23.04ID:sjfW/TwQ トランザクションはversionchange全体で1つ
363デフォルトの名無しさん
2016/08/21(日) 23:45:38.76ID:Dn9vwW86 >>360
ハンドラに代入したらそりゃ一回だけじゃねえの?
addEventListener使わないのはどうして?
複数作成しても同一、ってなんで複数作成する必要があるの?
トランザクションと同じ、の根拠何なの?
onupgradeneededでしか使えないんじゃなかったっけ?
消す意味がわからんのだけど、なんで消したいの?
消さなきゃいけないなら保存なんかしなけりゃ良いと思うんだが。
createObjectStoreがなんでtransaction帰すべきなの?
ObjectStoreをcreateしたのに。
一つのストアから、2つ以上のトランザクション作りたい場合に詰むんじゃねえの?
なんか根本的に間違ってない?
ハンドラに代入したらそりゃ一回だけじゃねえの?
addEventListener使わないのはどうして?
複数作成しても同一、ってなんで複数作成する必要があるの?
トランザクションと同じ、の根拠何なの?
onupgradeneededでしか使えないんじゃなかったっけ?
消す意味がわからんのだけど、なんで消したいの?
消さなきゃいけないなら保存なんかしなけりゃ良いと思うんだが。
createObjectStoreがなんでtransaction帰すべきなの?
ObjectStoreをcreateしたのに。
一つのストアから、2つ以上のトランザクション作りたい場合に詰むんじゃねえの?
なんか根本的に間違ってない?
364デフォルトの名無しさん
2016/08/21(日) 23:48:10.59ID:ZqmshKaM なぜ、ストアごと消す必要があるんだろう。
中身だけ消せばいいんじゃねえの?clear一発っしょ。
中身だけ消せばいいんじゃねえの?clear一発っしょ。
365デフォルトの名無しさん
2016/08/22(月) 00:02:44.22ID:m1LOPf7I 中身だけ消す使い方も出来るが、それだと名前対応の辞書引きが必要になる。
管理上「最下層の名前=最下層のobjectStoreの名前」が一番簡単だからそうしている。
アクセス/追加/廃棄単位もこれと同一だから、管理上はそこにobjectStore階層を置きたい。
もちろんキーに全部含めてフラットに扱うことも出来るが、
元々階層オブジェクトなのをフラットにしてDBに負荷をかけるのは本末転倒だ。
それでコードが楽になるならメリットもあるが、今回はそうではないし。
今回は完全に階層オブジェクト(末端はファイル)だからIndexedDBの必要はないのだけど、
FileSystemAPIだとChromeしか使えない。
これについてはFireFoxはIndexedDBを使えという主張らしく、
確かに機能的には上位互換だから、動作が十分に軽ければ問題ない。だからそれを試している。
https://dev.mozilla.jp/2012/07/why-no-filesystem-api-in-firefox/
http://www.html5rocks.com/ja/tutorials/file/filesystem/
管理上「最下層の名前=最下層のobjectStoreの名前」が一番簡単だからそうしている。
アクセス/追加/廃棄単位もこれと同一だから、管理上はそこにobjectStore階層を置きたい。
もちろんキーに全部含めてフラットに扱うことも出来るが、
元々階層オブジェクトなのをフラットにしてDBに負荷をかけるのは本末転倒だ。
それでコードが楽になるならメリットもあるが、今回はそうではないし。
今回は完全に階層オブジェクト(末端はファイル)だからIndexedDBの必要はないのだけど、
FileSystemAPIだとChromeしか使えない。
これについてはFireFoxはIndexedDBを使えという主張らしく、
確かに機能的には上位互換だから、動作が十分に軽ければ問題ない。だからそれを試している。
https://dev.mozilla.jp/2012/07/why-no-filesystem-api-in-firefox/
http://www.html5rocks.com/ja/tutorials/file/filesystem/
366デフォルトの名無しさん
2016/08/22(月) 00:09:17.75ID:bLWZhaRu ファイルって何に使ってるの?
最悪消えても良いのならCacheStorageもあるが。
最悪消えても良いのならCacheStorageもあるが。
367デフォルトの名無しさん
2016/08/22(月) 00:15:46.53ID:m1LOPf7I >>362
確認した。おそらくそのようだ。
> Transactions of this mode cannot run concurrently with other transactions. Transactions in this mode are known as "upgrade transactions."
> https://developer.mozilla.org/ja/docs/Web/API/IDBTransaction
そしてこの"upgrade transactions."がどこのプロパティに現れるのか知りたい。
つか、一つならdb.transactionにぶら下げといてくれよなと。
createObjectStoreの後にもここにはぶら下がってないね。
確認した。おそらくそのようだ。
> Transactions of this mode cannot run concurrently with other transactions. Transactions in this mode are known as "upgrade transactions."
> https://developer.mozilla.org/ja/docs/Web/API/IDBTransaction
そしてこの"upgrade transactions."がどこのプロパティに現れるのか知りたい。
つか、一つならdb.transactionにぶら下げといてくれよなと。
createObjectStoreの後にもここにはぶら下がってないね。
368デフォルトの名無しさん
2016/08/22(月) 00:23:12.68ID:m1LOPf7I >>366
Web上のファイルの保存用途に使う。(アーカイブ)
だからファイルが保存出来れば何でも良い。
(まだFileSystemAPIは試していない)
URLは最初から階層になっているし、それを保つのが管理上一番楽だからそうする。
したがって、DBアクセスの必要はない。
ユーザがライフタイムを完全に管理出来なければならない。
(Web上から削除された時、ユーザ側で削除するか保存するか決める)
CacheStorageはあとで見てみるが、チラ見では新しすぎる感じ。
Web上のファイルの保存用途に使う。(アーカイブ)
だからファイルが保存出来れば何でも良い。
(まだFileSystemAPIは試していない)
URLは最初から階層になっているし、それを保つのが管理上一番楽だからそうする。
したがって、DBアクセスの必要はない。
ユーザがライフタイムを完全に管理出来なければならない。
(Web上から削除された時、ユーザ側で削除するか保存するか決める)
CacheStorageはあとで見てみるが、チラ見では新しすぎる感じ。
369デフォルトの名無しさん
2016/08/22(月) 00:32:40.08ID:utwn7AiT >>365
頭おかしくなければ、もともと階層オブジェクトなのをフラットに、とか変な事考えなくていいんじゃねえの?
/hoge..../a.php?aaa/bbb
/hoge.../a/aaa/bbb
が同じとかあんじゃん。
url:{
content:Blob,
schema:xxx,
host:xxxx,
port:xxxxx,
path:[aaa,bbb,ccc]
}
とでもオブジェクト作って、pathにインデックス貼れば?
なんの負担でも無いよ。indexで引くDBだからindexedDBなんだし。
階層構造を保存するためにハードディスクが階段の形してるなら寝言続けて。
頭おかしくなければ、もともと階層オブジェクトなのをフラットに、とか変な事考えなくていいんじゃねえの?
/hoge..../a.php?aaa/bbb
/hoge.../a/aaa/bbb
が同じとかあんじゃん。
url:{
content:Blob,
schema:xxx,
host:xxxx,
port:xxxxx,
path:[aaa,bbb,ccc]
}
とでもオブジェクト作って、pathにインデックス貼れば?
なんの負担でも無いよ。indexで引くDBだからindexedDBなんだし。
階層構造を保存するためにハードディスクが階段の形してるなら寝言続けて。
370デフォルトの名無しさん
2016/08/22(月) 00:36:42.04ID:m1LOPf7I >>366
CacheAPI見てみたがライフタイムの管理がよく分からん。
「ユーザ側からの削除無しなら永久保存」(つまりファイルと同じ)に出来る物なの?
https://developer.mozilla.org/ja/docs/Web/API/Cache
あとIndexedDBはFireFoxがそういっているから試してみているだけであって、
FileSystemAPIだとWindowsから直接コピーとか出来るはずなので、
結果的にアーカイブの管理が楽にはなるから、そっちを使うかも。
いずれにしても今は試している段階だ。
何か情報あればよろしく。
CacheAPI見てみたがライフタイムの管理がよく分からん。
「ユーザ側からの削除無しなら永久保存」(つまりファイルと同じ)に出来る物なの?
https://developer.mozilla.org/ja/docs/Web/API/Cache
あとIndexedDBはFireFoxがそういっているから試してみているだけであって、
FileSystemAPIだとWindowsから直接コピーとか出来るはずなので、
結果的にアーカイブの管理が楽にはなるから、そっちを使うかも。
いずれにしても今は試している段階だ。
何か情報あればよろしく。
371デフォルトの名無しさん
2016/08/22(月) 00:42:53.49ID:utwn7AiT 自分はすごく考えた結果、こうする他がない、でもわからん。不自然な答えになる。そのやり方は不自然なやり方だからどこにも載ってないから教えてってときに、情報出し渋るなよ。
どう考えても自分の発想が間違ってる以外の結論出ないんだから。
>>370
しかしなんでパスをインデックスに出来ないの?
限界サイズは一番でかいか無限だよ。IndexedDBは。
どう考えても自分の発想が間違ってる以外の結論出ないんだから。
>>370
しかしなんでパスをインデックスに出来ないの?
限界サイズは一番でかいか無限だよ。IndexedDBは。
372デフォルトの名無しさん
2016/08/22(月) 00:43:11.87ID:m1LOPf7I >>369
それも何の負担もないが、
元のURLもクエリを含まないからそのままでも全く負担無いんだよ。
だからその方法ではコードは楽にならない。
仮にFileSystemAPIを使ったとして、
Windowsから直接ファイルをアクセス出来れば、
アーカイブが要らなくなった時にエクスプローラから削除出来るでしょ。
直感的に一番簡単。
それを意味無くフラットなDBにしてしまったら、
そのアプリいちいち起動しないとあれこれ出来ないでしょ。
バグってて削除出来ないとかもあり得るわけでね。そういうこと。
他アプリとインタフェースが揃っているのは重要なんだよ。
仮にIndexedDBも結果的にWindowsファイルの階層として見える形で
objectStoreを置いてくれていれば、同様のことが期待出来るわけだし。
それも何の負担もないが、
元のURLもクエリを含まないからそのままでも全く負担無いんだよ。
だからその方法ではコードは楽にならない。
仮にFileSystemAPIを使ったとして、
Windowsから直接ファイルをアクセス出来れば、
アーカイブが要らなくなった時にエクスプローラから削除出来るでしょ。
直感的に一番簡単。
それを意味無くフラットなDBにしてしまったら、
そのアプリいちいち起動しないとあれこれ出来ないでしょ。
バグってて削除出来ないとかもあり得るわけでね。そういうこと。
他アプリとインタフェースが揃っているのは重要なんだよ。
仮にIndexedDBも結果的にWindowsファイルの階層として見える形で
objectStoreを置いてくれていれば、同様のことが期待出来るわけだし。
373デフォルトの名無しさん
2016/08/22(月) 00:49:08.43ID:m1LOPf7I374デフォルトの名無しさん
2016/08/22(月) 00:56:03.75ID:m1LOPf7I IndexedDBの容量制限は実質1/10*HDDね。
https://developer.mozilla.org/ja/docs/Web/API/IndexedDB_API/Browser_storage_limits_and_eviction_criteria
多分FileSystemAPIには上限がない(HDDの上限だと信じている)
繰り返すが、今回は元々アーカイブ用途だからそもそもDBアクセスの必要はない。
(横断的クエリとか検索とかは全く必要ない)
ただ、機能的には上位互換だから動作に問題なければそれでもいい。それだけ。
https://developer.mozilla.org/ja/docs/Web/API/IndexedDB_API/Browser_storage_limits_and_eviction_criteria
多分FileSystemAPIには上限がない(HDDの上限だと信じている)
繰り返すが、今回は元々アーカイブ用途だからそもそもDBアクセスの必要はない。
(横断的クエリとか検索とかは全く必要ない)
ただ、機能的には上位互換だから動作に問題なければそれでもいい。それだけ。
375デフォルトの名無しさん
2016/08/22(月) 01:07:03.73ID:utwn7AiT >>372
は?消すのはエクスプローラーなの?
意味なくフラットなぁ。
十分に意味のあるフラットだと思うけど。
バグって削除できないから、だから最初の発想では毎回ストアを作って破棄します、なんて考え方だったの?あきれた。
upgradeはなんなのか。
dir /S/Bした結果だから余程見慣れてると思うけどね。
WindowsWindowsって気持ち悪いけど。
べつに、どのフォルダ以下、って、キーの先頭xxxxxx文字が指定のもの、なんだし、特に変わらんと思うんだけど、
お前の中で違うならそうなんだろう。
フラットに見えるものが、フラットではないと思うのがよくわからなすぎて悩むわ。
indexedDBには文字列しか保存できないと思ってんのかな。
フラットにはしない!って、じゃあどうやってWindowsってフォルダの構造保存してるんだろう。
って考えたら、
フラットなものに保存されてる事気づくと思うんだけど。
>>374
だから、実際のサイズ調べてこいよ。
クォータまでだよ。
それに、残念だけど、フォルダとして見られる物じゃないよ。
は?消すのはエクスプローラーなの?
意味なくフラットなぁ。
十分に意味のあるフラットだと思うけど。
バグって削除できないから、だから最初の発想では毎回ストアを作って破棄します、なんて考え方だったの?あきれた。
upgradeはなんなのか。
dir /S/Bした結果だから余程見慣れてると思うけどね。
WindowsWindowsって気持ち悪いけど。
べつに、どのフォルダ以下、って、キーの先頭xxxxxx文字が指定のもの、なんだし、特に変わらんと思うんだけど、
お前の中で違うならそうなんだろう。
フラットに見えるものが、フラットではないと思うのがよくわからなすぎて悩むわ。
indexedDBには文字列しか保存できないと思ってんのかな。
フラットにはしない!って、じゃあどうやってWindowsってフォルダの構造保存してるんだろう。
って考えたら、
フラットなものに保存されてる事気づくと思うんだけど。
>>374
だから、実際のサイズ調べてこいよ。
クォータまでだよ。
それに、残念だけど、フォルダとして見られる物じゃないよ。
376デフォルトの名無しさん
2016/08/22(月) 01:09:42.35ID:utwn7AiT まさかディレクトリ掘るのに再起使ってるから、平たくする方法がわからんのかな。
そんなに階層階層言うなら、階層構造渡したらそのまんま保存してくれるラッパ作るか、
バイナリの保存はちょっと考えなきゃならんがブラウザ版nedbでも使えばいいのに。
そんなに階層階層言うなら、階層構造渡したらそのまんま保存してくれるラッパ作るか、
バイナリの保存はちょっと考えなきゃならんがブラウザ版nedbでも使えばいいのに。
377デフォルトの名無しさん
2016/08/22(月) 01:16:58.93ID:bLWZhaRu >>370
保証はされていないが、一般的な環境ではまず問題ない。
というかIDBも実際は永続性は保証されていない。
Fxだと保証されているのは非標準のオプションを指定した時のみで、
他のブラウザでも基本的に一時的なものでディスクが埋まった時は利用頻度の少ないものから削除される。
トランザクションだって完璧でない。実際はパフォーマンス向上のためにディスクの書き込み完了を待たない。
保証はされていないが、一般的な環境ではまず問題ない。
というかIDBも実際は永続性は保証されていない。
Fxだと保証されているのは非標準のオプションを指定した時のみで、
他のブラウザでも基本的に一時的なものでディスクが埋まった時は利用頻度の少ないものから削除される。
トランザクションだって完璧でない。実際はパフォーマンス向上のためにディスクの書き込み完了を待たない。
378デフォルトの名無しさん
2016/08/22(月) 01:19:31.86ID:m1LOPf7I >>375
> それに、残念だけど、フォルダとして見られる物じゃないよ。
そうか、これは残念だ。
だったらやっぱりFileSystemAPIかな。
削除機能は内部にも付けるけど、
エクスプローラでも追加/移動/削除出来た方がいいのは自明だろ。
他アプリとの連携もし易くなるし。
まあお前が色々勘違いしているのは分かるけど、
既に言っていることばかりだから読み返してくれ。
> それに、残念だけど、フォルダとして見られる物じゃないよ。
そうか、これは残念だ。
だったらやっぱりFileSystemAPIかな。
削除機能は内部にも付けるけど、
エクスプローラでも追加/移動/削除出来た方がいいのは自明だろ。
他アプリとの連携もし易くなるし。
まあお前が色々勘違いしているのは分かるけど、
既に言っていることばかりだから読み返してくれ。
379デフォルトの名無しさん
2016/08/22(月) 01:25:17.05ID:utwn7AiT >>378
だから、FileSystemApiがだよ。
フォルダとしては見られないか、超掘り返さないと見れないよ。
更にいうと、エクスプローラでなんなりするべきものじゃない。
それはもう、Electronかなんかで作れ。な?
お前が勘違いしてるのは、多分indexedDBへの保存の方法だとの思うけど。
そのために必要な階層構造を保ったまま、indexdDBに十分入れれるからな。
だから、FileSystemApiがだよ。
フォルダとしては見られないか、超掘り返さないと見れないよ。
更にいうと、エクスプローラでなんなりするべきものじゃない。
それはもう、Electronかなんかで作れ。な?
お前が勘違いしてるのは、多分indexedDBへの保存の方法だとの思うけど。
そのために必要な階層構造を保ったまま、indexdDBに十分入れれるからな。
380デフォルトの名無しさん
2016/08/22(月) 01:25:40.46ID:utwn7AiT まぁ、インスペクタでは表にしかならんだろうけど。
381デフォルトの名無しさん
2016/08/22(月) 01:30:27.67ID:m1LOPf7I >>377
了解。ありがとう。
アーカイブ用途なのでトランザクションに関しては問題ない。
再ダウンロードして保存すればいいだけだから。
機能は、Web上で削除されたファイルをまだ削除されていないように見せかけるもの。
それが永久だとアーカイブということになる。
CacheAPIは多分この用途に作られているから、
それが使えるのならそっちを使った方が色々すんなり行くのだろうね。
プロキシとして機能してくれるなら、いちいちObjectURLに張り替える必要もなくなるし。
全体として楽になる。
ただ永久保証無しなら、何らかの形で抽出機構が必要になる。
これがちと面倒か。
多分CacheAPIの区画を「永久」「一時」とユーザー側で指定出来れば一番良いのだけど、
無理だよね?
了解。ありがとう。
アーカイブ用途なのでトランザクションに関しては問題ない。
再ダウンロードして保存すればいいだけだから。
機能は、Web上で削除されたファイルをまだ削除されていないように見せかけるもの。
それが永久だとアーカイブということになる。
CacheAPIは多分この用途に作られているから、
それが使えるのならそっちを使った方が色々すんなり行くのだろうね。
プロキシとして機能してくれるなら、いちいちObjectURLに張り替える必要もなくなるし。
全体として楽になる。
ただ永久保証無しなら、何らかの形で抽出機構が必要になる。
これがちと面倒か。
多分CacheAPIの区画を「永久」「一時」とユーザー側で指定出来れば一番良いのだけど、
無理だよね?
382デフォルトの名無しさん
2016/08/22(月) 01:33:03.22ID:m1LOPf7I383デフォルトの名無しさん
2016/08/22(月) 01:34:46.91ID:m1LOPf7I384デフォルトの名無しさん
2016/08/22(月) 01:38:12.92ID:utwn7AiT >>382
そのままじゃなくて、書き加えて保存できるし、
その任意のプロパティをインデックスに出来るよ。
お前の言うフォルダ名も、そのままでも、セパレータで分割しても、両方でもインデックスとして保存できる。
このフォルダ以下、これと同じ階層のもの、ファイル、全部綺麗に管理できるんだけどね。
これをフラットだからダメ、って言うなら、
一つのオブジェクト入れるオブジェクトに好きなだけツリー構造こしらえれば良いのかもしれん()が。
ノータリンに説明した時間が無駄だったな。
そのままじゃなくて、書き加えて保存できるし、
その任意のプロパティをインデックスに出来るよ。
お前の言うフォルダ名も、そのままでも、セパレータで分割しても、両方でもインデックスとして保存できる。
このフォルダ以下、これと同じ階層のもの、ファイル、全部綺麗に管理できるんだけどね。
これをフラットだからダメ、って言うなら、
一つのオブジェクト入れるオブジェクトに好きなだけツリー構造こしらえれば良いのかもしれん()が。
ノータリンに説明した時間が無駄だったな。
385デフォルトの名無しさん
2016/08/22(月) 01:44:52.41ID:m1LOPf7I386デフォルトの名無しさん
2016/08/22(月) 01:53:36.82ID:utwn7AiT >>385
はぁ。そうですか。
それでidb程度が使えないというか、わけわからん仕様出してくるとは、「それなりに考えて」階層化してるものが、表型DBに落ちてりゃ最高に面白いけど、フォルダ()なんだろうな。
好きに悩んでバギーなもの作ればよろし。
はぁ。そうですか。
それでidb程度が使えないというか、わけわからん仕様出してくるとは、「それなりに考えて」階層化してるものが、表型DBに落ちてりゃ最高に面白いけど、フォルダ()なんだろうな。
好きに悩んでバギーなもの作ればよろし。
387デフォルトの名無しさん
2016/08/22(月) 01:59:36.01ID:utwn7AiT ブラウザの枠越えてフォルダがどうとか言うなら普通にWindowsアプリ組めばいいんじゃないのかな。
ブラウザはブラウザでサンドボックスになってるから良いのに。
ブラウザはブラウザでサンドボックスになってるから良いのに。
388デフォルトの名無しさん
2016/08/22(月) 02:02:44.31ID:m1LOPf7I >>386
いや何を勘違いしているのか知らんが、コードはもう動いているし今はテスト中だぞ。
まあそれはさておき、FileSystemAPIが異なるファイルシステムを使っているのは
確定ではないがどうやらそのようだ。
というかこれだとWeb屋は言葉を間違っている。
サンドボックス:その内部で何をやっても外部に影響はない
ブラックボックス:その内部がどうなっているか外部からは見えない
ブラウザストレージはサンドボックスである必要はあるが、
ブラックボックスである必要はない。というかFileSystemAPIならなおさら。
てかマジでブラックボックスならFileSystemAPIの存在価値無いよ。
これだとFireFoxの言うとおりだと言うことになる。
何で意味無くブラックボックス化してんだ?
いや何を勘違いしているのか知らんが、コードはもう動いているし今はテスト中だぞ。
まあそれはさておき、FileSystemAPIが異なるファイルシステムを使っているのは
確定ではないがどうやらそのようだ。
というかこれだとWeb屋は言葉を間違っている。
サンドボックス:その内部で何をやっても外部に影響はない
ブラックボックス:その内部がどうなっているか外部からは見えない
ブラウザストレージはサンドボックスである必要はあるが、
ブラックボックスである必要はない。というかFileSystemAPIならなおさら。
てかマジでブラックボックスならFileSystemAPIの存在価値無いよ。
これだとFireFoxの言うとおりだと言うことになる。
何で意味無くブラックボックス化してんだ?
389デフォルトの名無しさん
2016/08/22(月) 02:14:19.68ID:utwn7AiT >>388
サンドボックスだ、としか言ってないし、
ブラックボックスではない、とは言ってないからいいんじゃねーの?
動いててテストフェーズなのに未実装機能あるなんて面白いのか面白くないのかわからんな。
だから言ってんじゃん。
それゴミ。idbの方がはるかにマシ。
要はクロームアプリ同士で、ファイルが筒抜けにならんように隔離してみました、って感じ。
サンドボックスだ、としか言ってないし、
ブラックボックスではない、とは言ってないからいいんじゃねーの?
動いててテストフェーズなのに未実装機能あるなんて面白いのか面白くないのかわからんな。
だから言ってんじゃん。
それゴミ。idbの方がはるかにマシ。
要はクロームアプリ同士で、ファイルが筒抜けにならんように隔離してみました、って感じ。
390デフォルトの名無しさん
2016/08/22(月) 02:22:51.64ID:m1LOPf7I >>389
いやFileSystemAPIと言うからにはエクスプローラで操作出来ないと駄目だろ。
機能としてはIndexedDBの方が上位互換なんだから、
独自ファイルシステムなら存在価値がない。
> 要はクロームアプリ同士で、ファイルが筒抜けにならんように隔離してみました
この必要あるの?
具体的に言えばアプリのシグネチャ?でも混ぜ込んであるって事?
ローカルストレージが共通なのが多少問題だったから仕切ったってわけか?
いやFileSystemAPIと言うからにはエクスプローラで操作出来ないと駄目だろ。
機能としてはIndexedDBの方が上位互換なんだから、
独自ファイルシステムなら存在価値がない。
> 要はクロームアプリ同士で、ファイルが筒抜けにならんように隔離してみました
この必要あるの?
具体的に言えばアプリのシグネチャ?でも混ぜ込んであるって事?
ローカルストレージが共通なのが多少問題だったから仕切ったってわけか?
391デフォルトの名無しさん
2016/08/22(月) 02:50:07.77ID:m1LOPf7I あー、つかお前らがよく使う言葉思い出したわ。
IndexedDBでもFileSystemAPIでも、
内部データを「追加/移動/削除」する為の機能を自分で作るのは、
「エクスプローラーの再開発」(車輪の再開発)なんだよ。
Windows上のエクスプローラーが使えたらそれが一番良いだろ。
ドラッグアンドドロップやプレビューの機能は全部持っているし、バグもないし。
つか何故いちいち「マイエクスプローラー」を開発しなければならんのよ?
これが>>379の勘違いに対するお前らの言葉での答えね。
そしてChromeは「マイエクスプローラー」の開発を強制するわけだ。
アホかねと。
IndexedDBでもFileSystemAPIでも、
内部データを「追加/移動/削除」する為の機能を自分で作るのは、
「エクスプローラーの再開発」(車輪の再開発)なんだよ。
Windows上のエクスプローラーが使えたらそれが一番良いだろ。
ドラッグアンドドロップやプレビューの機能は全部持っているし、バグもないし。
つか何故いちいち「マイエクスプローラー」を開発しなければならんのよ?
これが>>379の勘違いに対するお前らの言葉での答えね。
そしてChromeは「マイエクスプローラー」の開発を強制するわけだ。
アホかねと。
392デフォルトの名無しさん
2016/08/22(月) 07:34:32.01ID:utwn7AiT >>390
ブラウザってパソコン以外にも乗るじゃん。
その時、ファイルシステムなんて存在しないかもしれないよ。
って話。
>>390
例えば、なんかのアプリで保存したパスワードなんかを、別のアプリから覗き見出来ないようになってる。
>>391
世界中の人がWindowsのエクスプローラやマックのFinder使ってるから訳じゃないんだよw
内部データを追加、移動、削除するってのは、つきつめたらそれが機能なんだから。
お前が使いたいのがたまたまエクスプローラなだけだから、そう思うんだろうけど。
マイエクスプローラーではなくて、自分が使いやすいUI作れよ。
それか、どっかポート開けてwebDAVででも晒してローカルでマウントさせろ。
ブラウザってパソコン以外にも乗るじゃん。
その時、ファイルシステムなんて存在しないかもしれないよ。
って話。
>>390
例えば、なんかのアプリで保存したパスワードなんかを、別のアプリから覗き見出来ないようになってる。
>>391
世界中の人がWindowsのエクスプローラやマックのFinder使ってるから訳じゃないんだよw
内部データを追加、移動、削除するってのは、つきつめたらそれが機能なんだから。
お前が使いたいのがたまたまエクスプローラなだけだから、そう思うんだろうけど。
マイエクスプローラーではなくて、自分が使いやすいUI作れよ。
それか、どっかポート開けてwebDAVででも晒してローカルでマウントさせろ。
393デフォルトの名無しさん
2016/08/22(月) 10:56:09.85ID:uzkoNVx4 どうしてこういう人は、ライブラリを作ろうとはしないんだろう。
ディレクトリ一覧を帰す関数、あるディレクトリのディレクトリとファイル一覧を帰す関数、ファイルを新規、取得、更新、削除する関数を作っときゃ、それらの下回りがindexedDBだろうがサーバ関数だろうが関係無く透過的に扱えんじゃねえの?
それこそ、内部実装無視してindexedDBに行ごとに入れようが、クソでかいオブジェクトとして入れようが、はたまたサーバに入れようが、ご希望の動きがすぐ書けると思うんだけど。
ディレクトリ一覧を帰す関数、あるディレクトリのディレクトリとファイル一覧を帰す関数、ファイルを新規、取得、更新、削除する関数を作っときゃ、それらの下回りがindexedDBだろうがサーバ関数だろうが関係無く透過的に扱えんじゃねえの?
それこそ、内部実装無視してindexedDBに行ごとに入れようが、クソでかいオブジェクトとして入れようが、はたまたサーバに入れようが、ご希望の動きがすぐ書けると思うんだけど。
394デフォルトの名無しさん
2016/08/22(月) 21:30:14.52ID:m1LOPf7I すまぬ、>>358は間違い。
upgradeのときはe.target.transactionが最初から入っている。
昨日も確認したのだが、どうやら間違えたようだ。
これで修正出来たかは確認中。
これとは別に、createObjectStoreのoncompleteが少し早いタイミングで返ってくるらしく、
oncomplete直後にput等をせずに終了するとエラーになる。
これはupgradeのtransactionが並列出来ないということなので、
一旦closeして開きなおして並列性を高めようとしたが、失敗した。
upgradeのときはe.target.transactionが最初から入っている。
昨日も確認したのだが、どうやら間違えたようだ。
これで修正出来たかは確認中。
これとは別に、createObjectStoreのoncompleteが少し早いタイミングで返ってくるらしく、
oncomplete直後にput等をせずに終了するとエラーになる。
これはupgradeのtransactionが並列出来ないということなので、
一旦closeして開きなおして並列性を高めようとしたが、失敗した。
395デフォルトの名無しさん
2016/08/22(月) 21:40:34.14ID:m1LOPf7I >>392
未来のストレージがどうなるかは別の話だ。
FileSystemAPIはオレオレエクスプローラの再開発をしなくて良いのが利点であって、
それがないのならゴミでしかない。
お前が色々再開発をするのは勝手だけど、大多数の人にとっては、
普段使っている物がそのまま使えるのが一番分かりやすいUIだ。
Webアプリ間での相互アクセスを禁止するのはいいとして、
OSからの透過アクセスを禁止する意味はない。
ブラウザアプリからは常にブラウザ経由になるのだから、
アクセス権限、unixで言う644とか755とかを管理するのが一番簡単。
何でそんな糞仕様にしたのか意味不明。
ていうかChromeではBlobをIndexedDBにいれれないのか。使えねえ。
IndexedDBで両対応という作戦は頓挫した。根本的に練り直しだ。
てかマジでこの辺統一しろよな。
> While Firefox supports blob storage for IndexedDB,
> Chrome currently does not (Chrome is still implementing support for blob storage in IndexedDB).
> If you are targeting Chrome for your app and you want to store blobs,
> the File System API and App Cache are your only choices.
> However, AppCache storage isn't locally mutable,
> and doesn't allow for fine-grained client-side management.
> https://developer.mozilla.org/en-US/docs/Web/API/File_System_API/Introduction
未来のストレージがどうなるかは別の話だ。
FileSystemAPIはオレオレエクスプローラの再開発をしなくて良いのが利点であって、
それがないのならゴミでしかない。
お前が色々再開発をするのは勝手だけど、大多数の人にとっては、
普段使っている物がそのまま使えるのが一番分かりやすいUIだ。
Webアプリ間での相互アクセスを禁止するのはいいとして、
OSからの透過アクセスを禁止する意味はない。
ブラウザアプリからは常にブラウザ経由になるのだから、
アクセス権限、unixで言う644とか755とかを管理するのが一番簡単。
何でそんな糞仕様にしたのか意味不明。
ていうかChromeではBlobをIndexedDBにいれれないのか。使えねえ。
IndexedDBで両対応という作戦は頓挫した。根本的に練り直しだ。
てかマジでこの辺統一しろよな。
> While Firefox supports blob storage for IndexedDB,
> Chrome currently does not (Chrome is still implementing support for blob storage in IndexedDB).
> If you are targeting Chrome for your app and you want to store blobs,
> the File System API and App Cache are your only choices.
> However, AppCache storage isn't locally mutable,
> and doesn't allow for fine-grained client-side management.
> https://developer.mozilla.org/en-US/docs/Web/API/File_System_API/Introduction
396デフォルトの名無しさん
2016/08/22(月) 21:41:45.37ID:m1LOPf7I >>393
それはお前が無能だからお前の周りも無能しかいないだけ。
それはお前が無能だからお前の周りも無能しかいないだけ。
397デフォルトの名無しさん
2016/08/23(火) 00:24:48.05ID:ua608nki398デフォルトの名無しさん
2016/08/23(火) 00:49:53.34ID:fTj2N0cj 今のところはそのつもりだ。cscriptと併用する。
Unix使いならcron位自分で書けということでいい。
もちろん他にいい方法が見つかったら変更する。
長期的運用を考えた場合、
ブラウザがクラッシュした時に破損する可能性がある場所はアーカイブとしては使えない。
また他アーカイバも既にあるので、それらとの相互運用を考えた場合も、
生ファイルシステムでないと駄目だ。
格好は悪いがこれが運用上は一番マシだ。
まあもうちょっと考えるが。
Unix使いならcron位自分で書けということでいい。
もちろん他にいい方法が見つかったら変更する。
長期的運用を考えた場合、
ブラウザがクラッシュした時に破損する可能性がある場所はアーカイブとしては使えない。
また他アーカイバも既にあるので、それらとの相互運用を考えた場合も、
生ファイルシステムでないと駄目だ。
格好は悪いがこれが運用上は一番マシだ。
まあもうちょっと考えるが。
399デフォルトの名無しさん
2016/08/23(火) 01:04:54.52ID:ua608nki400デフォルトの名無しさん
2016/08/23(火) 01:17:30.72ID:fTj2N0cj インストールが必要な時点でアウト。
というかお前は無駄にシステムをでかくする病気にかかっていると思うぞ。
というかお前は無駄にシステムをでかくする病気にかかっていると思うぞ。
401デフォルトの名無しさん
2016/08/23(火) 01:47:37.85ID:ua608nki402デフォルトの名無しさん
2016/08/23(火) 08:05:29.74ID:ZcVGgUHo システムをでかくする病気って言われても、要件が見えなさすぎるんだししゃーなくない?
サーバ側ではデータベースに入ってんだろ?じゃあリプレイスすりゃいいじゃん。
むしろ、サーバのデータベースは何者かわからん。
アーカイブってなんだそりゃ。何のどんなアーカイブかわからんし、さらにそれが階層構造とか、階層構造はデータベースに入れられない()とか不思議発言過ぎるんじゃねえか?
サーバ側ではデータベースに入ってんだろ?じゃあリプレイスすりゃいいじゃん。
むしろ、サーバのデータベースは何者かわからん。
アーカイブってなんだそりゃ。何のどんなアーカイブかわからんし、さらにそれが階層構造とか、階層構造はデータベースに入れられない()とか不思議発言過ぎるんじゃねえか?
403デフォルトの名無しさん
2016/08/23(火) 08:18:51.01ID:exF8NocQ >>395
お前一体何時の記事見てんだよ。
MDNに頼るにしても最低でもLast updatedくらい見ろ。
もう何年も前にサポートされてるわ。
この手の情報は半年経つともう古い。
そして最終的にはブラウザのissuesやcommitsやソースコードを読まないと確かなことは言えない。
独自実装・勝手解釈・消費期限切れの塊であるMDNに1から10まで頼るのは危険。
お前一体何時の記事見てんだよ。
MDNに頼るにしても最低でもLast updatedくらい見ろ。
もう何年も前にサポートされてるわ。
この手の情報は半年経つともう古い。
そして最終的にはブラウザのissuesやcommitsやソースコードを読まないと確かなことは言えない。
独自実装・勝手解釈・消費期限切れの塊であるMDNに1から10まで頼るのは危険。
404デフォルトの名無しさん
2016/08/23(火) 11:20:47.03ID:ZcVGgUHo というかね、ミニマムなコード片書いてくれればいいと思うんだが。
書いて、あ、Blob入るじゃんって気づくから。
入らなければbase64なりにして突っ込みゃ良いだけだし。
そのまんま、自分のライブラリになると思うけど。
書いて、あ、Blob入るじゃんって気づくから。
入らなければbase64なりにして突っ込みゃ良いだけだし。
そのまんま、自分のライブラリになると思うけど。
405デフォルトの名無しさん
2016/08/23(火) 11:32:18.33ID:ZcVGgUHo ファイルが保存できればそれでいい、って言う割には、階層が、とか、自分の実装に凝り固まり過ぎだろ。
ただのrdbでもindexedDBでも
フルパス|[パス,,]|ファイル名|拡張子|中身|更新日などの情報|
って形で保存すりゃなんとでもなるだろ、常識的に考えて。
パスは、
file://
file://home
file://home/xxxxx
file://home/xxxxx/yyyyy
の配列で持っといて。
あるパス以下の物→パスで絞れば一撃
あるファイル→ファイル名で一撃
あるパスのあるファイル名→フルパスで一撃
でカーソル取れんじゃん。
あとはよしなに処理すりゃいいんじゃねえの?その為のトランザクションなんだし。
ディレクトリごとにストア分けて、ディレクトリを削除するのに、トランザクション何個も張る羽目になるっしょ。
ただのrdbでもindexedDBでも
フルパス|[パス,,]|ファイル名|拡張子|中身|更新日などの情報|
って形で保存すりゃなんとでもなるだろ、常識的に考えて。
パスは、
file://
file://home
file://home/xxxxx
file://home/xxxxx/yyyyy
の配列で持っといて。
あるパス以下の物→パスで絞れば一撃
あるファイル→ファイル名で一撃
あるパスのあるファイル名→フルパスで一撃
でカーソル取れんじゃん。
あとはよしなに処理すりゃいいんじゃねえの?その為のトランザクションなんだし。
ディレクトリごとにストア分けて、ディレクトリを削除するのに、トランザクション何個も張る羽目になるっしょ。
406デフォルトの名無しさん
2016/08/23(火) 21:49:08.63ID:fTj2N0cj >>403
おおありがとう。Blobサポート済みか。
となるとボツではなくなった。
記事は古いとは思ったが、政治的案件は時間では解決しないから、どうせ駄目だと思っていた。
>>401
いやcscript併用案はもう既に動いている。
考え方は簡単で、ブラウザで出来ないのはローカルファイルのサポートだから、
それをcscriptにやらせるということ。
とはいえ読み出しには手動で指定が必要だから、それとどっちがマシかということになる。
俺が勘違いしていたFileSystemAPIは
・ブラウザ側で「あるディレクトリ」を指定。これはブラウザ側で手動でしか出来ない。
(指定方法の取り扱いは「ダウンロード」フォルダと同じ)
・そのディレクトリ以下は読み書き自由。
だった。
もちろん生ファイルシステムでOS側からは直接読み書き変更可能。
ブラウザ側からのアクセスはWebアプリ毎にアクセス権が設定されている。
というかこれ以外のFileSystemAPIなんてゴミだろ。
あの糞仕様なら誰も使わない。使う意味無いし。
JavaScript界隈で思うのは、「使ってない奴」「三流プログラマ」が仕様を策定しているということ。
だから「使えない」「使いにくい」仕様が溢れかえっている。FileSystemAPIがゴミなのもこのため。
従来は仕様策定に関われる時点でそれなりの実力者しかいないからこういう事はなかったが、
良くも悪しくもJavaScriptはWebだって事だね。
>>405
つ薬
おおありがとう。Blobサポート済みか。
となるとボツではなくなった。
記事は古いとは思ったが、政治的案件は時間では解決しないから、どうせ駄目だと思っていた。
>>401
いやcscript併用案はもう既に動いている。
考え方は簡単で、ブラウザで出来ないのはローカルファイルのサポートだから、
それをcscriptにやらせるということ。
とはいえ読み出しには手動で指定が必要だから、それとどっちがマシかということになる。
俺が勘違いしていたFileSystemAPIは
・ブラウザ側で「あるディレクトリ」を指定。これはブラウザ側で手動でしか出来ない。
(指定方法の取り扱いは「ダウンロード」フォルダと同じ)
・そのディレクトリ以下は読み書き自由。
だった。
もちろん生ファイルシステムでOS側からは直接読み書き変更可能。
ブラウザ側からのアクセスはWebアプリ毎にアクセス権が設定されている。
というかこれ以外のFileSystemAPIなんてゴミだろ。
あの糞仕様なら誰も使わない。使う意味無いし。
JavaScript界隈で思うのは、「使ってない奴」「三流プログラマ」が仕様を策定しているということ。
だから「使えない」「使いにくい」仕様が溢れかえっている。FileSystemAPIがゴミなのもこのため。
従来は仕様策定に関われる時点でそれなりの実力者しかいないからこういう事はなかったが、
良くも悪しくもJavaScriptはWebだって事だね。
>>405
つ薬
407デフォルトの名無しさん
2016/08/23(火) 22:55:54.15ID:exF8NocQ exeみたいな実行形式やそのOSで特別な意味を表すシステムファイル等として書き出されちゃまずいので実態は偽装される様になってる。
ゴミというか、実験的で気まぐれな機能。もう何年も更新されていない。
誰も使わない、でもブラウザ内部では使われている。別に広く使われることを期待されていない。
IndexedDBやCacheDBの存在で意義をなくしつつある。
柔軟に検索したいなら前者、そうでないのなら後者をどうぞ。
君が望むようなファイルシステムAPIなどがなかなか策定されないのは幾つか理由がある。
でも技術的要因は取り除かれてきた(例えばPermissions API、Web App Manifest)ので、
あとは需要と雛形とブラウザベンダーのやる気次第。
とはいえ今はCSSや他の比較的低レベルなAPIが盛り上がっていて注力してるから後回しだろう。
W3CのMLを見ても「いくつか議論の余地がある」レベルの関心だ。
今はまだアイディアを貯めている段階だろう。
ゴミというか、実験的で気まぐれな機能。もう何年も更新されていない。
誰も使わない、でもブラウザ内部では使われている。別に広く使われることを期待されていない。
IndexedDBやCacheDBの存在で意義をなくしつつある。
柔軟に検索したいなら前者、そうでないのなら後者をどうぞ。
君が望むようなファイルシステムAPIなどがなかなか策定されないのは幾つか理由がある。
でも技術的要因は取り除かれてきた(例えばPermissions API、Web App Manifest)ので、
あとは需要と雛形とブラウザベンダーのやる気次第。
とはいえ今はCSSや他の比較的低レベルなAPIが盛り上がっていて注力してるから後回しだろう。
W3CのMLを見ても「いくつか議論の余地がある」レベルの関心だ。
今はまだアイディアを貯めている段階だろう。
408デフォルトの名無しさん
2016/08/23(火) 23:01:47.75ID:exF8NocQ あーでもやっぱりそろそろ動き出すかもな。
https://groups.google.com/a/chromium.org/forum/#!topic/blink-dev/_6Euwqv366U
これが落ち着けば足回りが揃うから。
https://groups.google.com/a/chromium.org/forum/#!topic/blink-dev/_6Euwqv366U
これが落ち着けば足回りが揃うから。
409デフォルトの名無しさん
2016/08/23(火) 23:50:21.90ID:fTj2N0cj >>407
> exeみたいな実行形式
Webアプリから起動出来なければこれは問題無いだろ。
> OSで特別な意味を表すシステムファイル等
要するにシンボリックリンク等で全部筒抜けになる場合だろ。
これも結局Webアプリ側はブラウザを通しての作成しか出来ないので、それを止めればいいだけ。
OS側からシンボリックリンクを貼ったり、exeを置くのは自由でいい。
Webアプリ側でexeを起動出来ず、シンボリックリンク等を作成出来なければいいだけ。
つまりファイルは「データ」としてしか扱えないという、実装するにも至極簡単な制限でしかない。
FileSystemAPIははっきり言って使う気がない仕様を策定してる。だったら策定しない方がマシ。
まあ策定してから捨てるというのがJavaScript流ではあるようだが。
> IndexedDBやCacheDBの存在で意義をなくしつつある。
結局の所、「勝手に削除される可能性がある」時点でアーカイブとしては使えない。
見たところここを保証する気はなさそうなので、
今回俺がこれらをメインに据えることは出来ないし、
どのみち「削除されない」ストレージも必要になると思う。
> exeみたいな実行形式
Webアプリから起動出来なければこれは問題無いだろ。
> OSで特別な意味を表すシステムファイル等
要するにシンボリックリンク等で全部筒抜けになる場合だろ。
これも結局Webアプリ側はブラウザを通しての作成しか出来ないので、それを止めればいいだけ。
OS側からシンボリックリンクを貼ったり、exeを置くのは自由でいい。
Webアプリ側でexeを起動出来ず、シンボリックリンク等を作成出来なければいいだけ。
つまりファイルは「データ」としてしか扱えないという、実装するにも至極簡単な制限でしかない。
FileSystemAPIははっきり言って使う気がない仕様を策定してる。だったら策定しない方がマシ。
まあ策定してから捨てるというのがJavaScript流ではあるようだが。
> IndexedDBやCacheDBの存在で意義をなくしつつある。
結局の所、「勝手に削除される可能性がある」時点でアーカイブとしては使えない。
見たところここを保証する気はなさそうなので、
今回俺がこれらをメインに据えることは出来ないし、
どのみち「削除されない」ストレージも必要になると思う。
410デフォルトの名無しさん
2016/08/23(火) 23:50:56.04ID:fTj2N0cj > Both Microsoft Edge and Mozilla Firefox are implementing the subsets documented in "File and Directory Entries API" for compatibility with Chrome in supporting Directory Upload.
正直これさっさと実装しろというのはある。
ディレクトリ指定出来ればUIが全然簡単になるから。
あとIndexedDBも全然こなれてない。
createObjectStore.oncompleteのタイミングがおかしいのは既に言ったが、(>>394)
それとは別にキューの実装もおかしい。
トランザクションがロールバック単位なので、
当初は各リクエストそのままで500トランザクションとか送ったら
「多すぎてキューに入りきりません」とエラーになった。
普通はキューは動的に確保すればいいので、500程度でオーバーフローとかアホかと思ったが、
そんなことを言っていても仕方ないので数珠繋ぎ方式に変更、トランザクションは数個に絞った。
ただそれでもごく偶に、しかも一つ目のトランザクションで同じエラーがでる。
つまり、IndexedDBのキューの実装はバグってる。
なおChrome50。Vistaなのでこれ以上更新出来ないし。
結局の所、大多数が使っている機能じゃないとバグ報告が上がってなくてバグが残っている。
IndexedDBもまだその程度だよ。安心しては使えない。
ただ従来方式の「ダウンロードリンク」を使うにしても、
1日10万ダウンロードとかになるので大丈夫なのか?という疑問はあるが、これも試すしかない。
(ダウンロードは履歴が残るようになっているので、手動ではあり得ないほどの数になると、
履歴がオーバフローするバグが残っているのではないかと恐れている。
これも知ってたら教えて欲しいが。)
正直これさっさと実装しろというのはある。
ディレクトリ指定出来ればUIが全然簡単になるから。
あとIndexedDBも全然こなれてない。
createObjectStore.oncompleteのタイミングがおかしいのは既に言ったが、(>>394)
それとは別にキューの実装もおかしい。
トランザクションがロールバック単位なので、
当初は各リクエストそのままで500トランザクションとか送ったら
「多すぎてキューに入りきりません」とエラーになった。
普通はキューは動的に確保すればいいので、500程度でオーバーフローとかアホかと思ったが、
そんなことを言っていても仕方ないので数珠繋ぎ方式に変更、トランザクションは数個に絞った。
ただそれでもごく偶に、しかも一つ目のトランザクションで同じエラーがでる。
つまり、IndexedDBのキューの実装はバグってる。
なおChrome50。Vistaなのでこれ以上更新出来ないし。
結局の所、大多数が使っている機能じゃないとバグ報告が上がってなくてバグが残っている。
IndexedDBもまだその程度だよ。安心しては使えない。
ただ従来方式の「ダウンロードリンク」を使うにしても、
1日10万ダウンロードとかになるので大丈夫なのか?という疑問はあるが、これも試すしかない。
(ダウンロードは履歴が残るようになっているので、手動ではあり得ないほどの数になると、
履歴がオーバフローするバグが残っているのではないかと恐れている。
これも知ってたら教えて欲しいが。)
411デフォルトの名無しさん
2016/08/24(水) 00:44:52.82ID:dKh15413412デフォルトの名無しさん
2016/08/24(水) 00:48:32.19ID:1m5/CfUP >>410
トランザクションがROLLBACK単位とか言うか
適宜コミットして、setTimeoutで遅延させてつかえよ。
ボンクラすぎるだろ。
タイミングも合ってるよ。
脳みそ腐ってないならば、ぜんコード上げてみろよ。見てやるから。
トランザクションがROLLBACK単位とか言うか
適宜コミットして、setTimeoutで遅延させてつかえよ。
ボンクラすぎるだろ。
タイミングも合ってるよ。
脳みそ腐ってないならば、ぜんコード上げてみろよ。見てやるから。
413デフォルトの名無しさん
2016/08/24(水) 00:52:22.97ID:7vNot/FK IndexedDBが小慣れていないと言われてるのは周知の事実。
が、機能は揃っているので上で言われてるように
大抵皆ライブラリを書いたり、使ったりして問題なく過ごしている。
君のここまでの書き込みは全然建設的じゃないし、
ほんとにバグがあるのか、もしくは君の方がが小慣れていないのかが分からない。
結果、ただの愚痴にしか聞こえずそれに対して何も言えることはない。
せめて再現するための最低限のコードを載せてくれ。
あと10万ダウンロードはやめとけ。ZIPなどに圧縮すればいい。
もしくはもう一般WebAPIだけで作るの諦めろ。
一般公開するかは知らんが、それだけの機能なら
拡張機能もしくはブラウザアプリにしてインストール必須にしても構わないだろう。
が、機能は揃っているので上で言われてるように
大抵皆ライブラリを書いたり、使ったりして問題なく過ごしている。
君のここまでの書き込みは全然建設的じゃないし、
ほんとにバグがあるのか、もしくは君の方がが小慣れていないのかが分からない。
結果、ただの愚痴にしか聞こえずそれに対して何も言えることはない。
せめて再現するための最低限のコードを載せてくれ。
あと10万ダウンロードはやめとけ。ZIPなどに圧縮すればいい。
もしくはもう一般WebAPIだけで作るの諦めろ。
一般公開するかは知らんが、それだけの機能なら
拡張機能もしくはブラウザアプリにしてインストール必須にしても構わないだろう。
414デフォルトの名無しさん
2016/08/24(水) 02:09:31.50ID:fG60fvYz >>413
> ほんとにバグがあるのか、もしくは君の方がが小慣れていないのかが分からない。
これはその通り。当初の>>358は間違いだったからね。
ただ仕様は大体理解したので、多分>>394と>>410はバグだ。
とはいえ切り分けはしない。
最新版が使えない状況で切り分けて報告する意味はないので無駄だから。
(最新版では既に治っているかもしれない)
俺については「バグがある」という認識で使うか、使うのを止めるかでしかない。
つまり他の方法も試して一番マシな方法を使うだけ。
ちなみにchromiumに対してバグ報告もしたことあるし、受け付けられてもいるよ。
ただそれをやるにしてもここでやる意味はない。直接報告すればいいだけ。
コードはここには上げない。
コピペすればいいだけのコードすら協力してくれないお前らに対して期待はしていないし、(>>270,279)
話を聞く限りお前らの腕前/デバッグ出来る範囲を完全に超えている。
コードを上げてもお前らでは何も出来ないよ。
いずれにしても既に公開はしているから、勝手に探せばいい。
100kダウンロードはその話だと試したわけではないんだろ?だったら俺が試すだけだよ。
ZIP化してもいいが取り扱いが面倒になるだけだから、いければ生ファイルで行く。
> 拡張機能もしくはブラウザアプリにしてインストール必須にしても構わないだろう。
これは何が違うんだ?調べた限りでは大差ないようだったが、違うのか?
なお今回欲しい機能は以下。
・ローカルファイルからのユーザ指定無しでの読み込み
・ダウンロード時のフォルダ指定(階層化したフォルダに対してのダウンロード先指定)
これらが出来るのなら乗り換えを検討する。
ちなみに今のところGreaseMonkeyで不自由していない。
ただ、GM専用機能も使ってないので、乗り換えは出来る。
> ほんとにバグがあるのか、もしくは君の方がが小慣れていないのかが分からない。
これはその通り。当初の>>358は間違いだったからね。
ただ仕様は大体理解したので、多分>>394と>>410はバグだ。
とはいえ切り分けはしない。
最新版が使えない状況で切り分けて報告する意味はないので無駄だから。
(最新版では既に治っているかもしれない)
俺については「バグがある」という認識で使うか、使うのを止めるかでしかない。
つまり他の方法も試して一番マシな方法を使うだけ。
ちなみにchromiumに対してバグ報告もしたことあるし、受け付けられてもいるよ。
ただそれをやるにしてもここでやる意味はない。直接報告すればいいだけ。
コードはここには上げない。
コピペすればいいだけのコードすら協力してくれないお前らに対して期待はしていないし、(>>270,279)
話を聞く限りお前らの腕前/デバッグ出来る範囲を完全に超えている。
コードを上げてもお前らでは何も出来ないよ。
いずれにしても既に公開はしているから、勝手に探せばいい。
100kダウンロードはその話だと試したわけではないんだろ?だったら俺が試すだけだよ。
ZIP化してもいいが取り扱いが面倒になるだけだから、いければ生ファイルで行く。
> 拡張機能もしくはブラウザアプリにしてインストール必須にしても構わないだろう。
これは何が違うんだ?調べた限りでは大差ないようだったが、違うのか?
なお今回欲しい機能は以下。
・ローカルファイルからのユーザ指定無しでの読み込み
・ダウンロード時のフォルダ指定(階層化したフォルダに対してのダウンロード先指定)
これらが出来るのなら乗り換えを検討する。
ちなみに今のところGreaseMonkeyで不自由していない。
ただ、GM専用機能も使ってないので、乗り換えは出来る。
415デフォルトの名無しさん
2016/08/24(水) 02:10:28.07ID:fG60fvYz > 君のここまでの書き込みは全然建設的じゃないし、(中略)
> 結果、ただの愚痴にしか聞こえずそれに対して何も言えることはない。
上記の通り、俺は相談以上の期待をお前らに対してはしていない。
だから気に入らなければレスくれなくていい。
(上記経験により俺もそういう距離感で行くことにしたから)
そちらも分かるように、どこまでの情報があれば何を回答出来るかはこちらも分かっている。
その上で書いているのだから、それについては無理という件については無視でいい。
馬鹿共は置き去りにしないとスレのレベルが上がらない。
その上でバグ確認に協力してくれるというのなら、
それは申し訳ないが今回はそこに踏み込む気はない。
理由は上記どおり、最新版でないと意味無いから。
そちらが既にバグに当たらない記述のライブラリなりを持っているのならそれで問題ないわけだし。
心配せずともchromeなんてバグだらけだぞ。
こなれていないところに踏み込んだらすぐに遭遇する。
それはそちらも知っていると思うが。
君らは気に入らないかもしれないが、俺は情報をくれた奴には感謝している。
ただ君らが「持ちつ持たれつ」という感覚を持ち合わせていないことも学習したから、
君らに大して期待もしていない。だから再度言うが、気に入らなければ無視でいい。
(というかこれまでの俺が甘かっただけで、本来は君らのスタンスの方がここには向いている)
> 結果、ただの愚痴にしか聞こえずそれに対して何も言えることはない。
上記の通り、俺は相談以上の期待をお前らに対してはしていない。
だから気に入らなければレスくれなくていい。
(上記経験により俺もそういう距離感で行くことにしたから)
そちらも分かるように、どこまでの情報があれば何を回答出来るかはこちらも分かっている。
その上で書いているのだから、それについては無理という件については無視でいい。
馬鹿共は置き去りにしないとスレのレベルが上がらない。
その上でバグ確認に協力してくれるというのなら、
それは申し訳ないが今回はそこに踏み込む気はない。
理由は上記どおり、最新版でないと意味無いから。
そちらが既にバグに当たらない記述のライブラリなりを持っているのならそれで問題ないわけだし。
心配せずともchromeなんてバグだらけだぞ。
こなれていないところに踏み込んだらすぐに遭遇する。
それはそちらも知っていると思うが。
君らは気に入らないかもしれないが、俺は情報をくれた奴には感謝している。
ただ君らが「持ちつ持たれつ」という感覚を持ち合わせていないことも学習したから、
君らに大して期待もしていない。だから再度言うが、気に入らなければ無視でいい。
(というかこれまでの俺が甘かっただけで、本来は君らのスタンスの方がここには向いている)
416デフォルトの名無しさん
2016/08/24(水) 02:47:00.24ID:fG60fvYz >>413
> IndexedDBが小慣れていないと言われてるのは周知の事実。
ちなみに俺はJavaScript屋ではないから、
こういう、「周知の事実」ってのは知らない情報だ。
だから君にとっては大したことなくても、俺にとっては助かっている。
その「周知の事実」にアクセス出来る人に対してこちらから提供出来る情報はほぼ無い。
せいぜい遭遇した事実/外部目線で見た感想を垂れ流すことくらいだ。
で、これを既にやっているわけだが、
結果、愚痴にしか見えないというのなら、それはそれで仕方ない。
残念ながら、こちらが「情報交換」として提供出来るのはこの程度でしかないんだよ。
何が君らにとって有意義な情報かもこちらには分からない。
だからとりあえず垂れ流すのみ。
> IndexedDBが小慣れていないと言われてるのは周知の事実。
ちなみに俺はJavaScript屋ではないから、
こういう、「周知の事実」ってのは知らない情報だ。
だから君にとっては大したことなくても、俺にとっては助かっている。
その「周知の事実」にアクセス出来る人に対してこちらから提供出来る情報はほぼ無い。
せいぜい遭遇した事実/外部目線で見た感想を垂れ流すことくらいだ。
で、これを既にやっているわけだが、
結果、愚痴にしか見えないというのなら、それはそれで仕方ない。
残念ながら、こちらが「情報交換」として提供出来るのはこの程度でしかないんだよ。
何が君らにとって有意義な情報かもこちらには分からない。
だからとりあえず垂れ流すのみ。
417デフォルトの名無しさん
2016/08/24(水) 07:24:26.62ID:dKh15413 何様かわからんな。
出せる情報もなく、教えてくれって虫が良すぎるだろ。
Qiitaにでも行ってくれば?
出せる情報もなく、教えてくれって虫が良すぎるだろ。
Qiitaにでも行ってくれば?
418デフォルトの名無しさん
2016/08/24(水) 08:19:51.08ID:u65p5RKL 俺はindexedDBを商用製品に普通に使ってる(しかも、ローカルへのキャッシュとして)から、ぶっちゃけどんなドヤされても、こいつの書いた実装が悪いんだろうなとしか思えん。
トランザクションで500件を超えるって、そんなデカいアトミックな操作が思いつかんレベル。
ファイルの取得であれば、保存できればそれでワントランザクションだろ。
関数越えてトランザクション持って回って、どっかで非同期な呼び出しがあってカーソル見失った瞬間にトランザクション失敗してるんじゃねえの?
とかそんな感想。
ある一定バージョンのファイルセットが取得できるまでをトランザクションと見なすなら、バージョンごとに仮データとして保存するトランザクションと、
古いセットを削除して、仮データを有効データに更新するトランザクションの二本で充分でしょ。
なんで、自分より相手方の方が馬鹿に違いない、と思えるのかわからん。
俺もコミッタだけど、その発想でプルリク投げた事は無いわ。
トランザクションで500件を超えるって、そんなデカいアトミックな操作が思いつかんレベル。
ファイルの取得であれば、保存できればそれでワントランザクションだろ。
関数越えてトランザクション持って回って、どっかで非同期な呼び出しがあってカーソル見失った瞬間にトランザクション失敗してるんじゃねえの?
とかそんな感想。
ある一定バージョンのファイルセットが取得できるまでをトランザクションと見なすなら、バージョンごとに仮データとして保存するトランザクションと、
古いセットを削除して、仮データを有効データに更新するトランザクションの二本で充分でしょ。
なんで、自分より相手方の方が馬鹿に違いない、と思えるのかわからん。
俺もコミッタだけど、その発想でプルリク投げた事は無いわ。
419デフォルトの名無しさん
2016/08/24(水) 08:36:10.31ID:u65p5RKL ダウンロードリンク、の代わりにindexedDB使う発想がわからん。
何がどこにどうダウンロードされるんだろう。
それはローカルに持ってたらどう便利なんだろう≒ローカルにあれば二度と押さないボタンなんだろうか?
なんか(アーカイブってのが何のアーカイブかはわからんが)ウェブから取得させるときに、二回目以降はそのクライアントのデータを使わせて、ダウンロードしたフリすれば良いの?
サービスワーカーで書いちゃだめなの?その処理。
何がどこにどうダウンロードされるんだろう。
それはローカルに持ってたらどう便利なんだろう≒ローカルにあれば二度と押さないボタンなんだろうか?
なんか(アーカイブってのが何のアーカイブかはわからんが)ウェブから取得させるときに、二回目以降はそのクライアントのデータを使わせて、ダウンロードしたフリすれば良いの?
サービスワーカーで書いちゃだめなの?その処理。
420デフォルトの名無しさん
2016/08/24(水) 08:45:06.93ID:7vNot/FK >>416
おいおい、はぶてんなってw
建設的でないどころではなくなってるぞ。
これだけ皆が比較的長文で沢山レスして構ってくれてるんだから
あとは君の態度次第で強力な仲間となるだろうよ。
答えをもらう代わりに問題をきちんと問題として認識できる形であげれば
それで十分「交換」になる。
あとDLに関しては500くらいで試してみて。
確かpermissionの取り方によるのか知らんが50か100毎に確認出たはずだから。
ファイルごとにオーバーヘッドもかかるだろうしアーカイブ化した方がいい。
おいおい、はぶてんなってw
建設的でないどころではなくなってるぞ。
これだけ皆が比較的長文で沢山レスして構ってくれてるんだから
あとは君の態度次第で強力な仲間となるだろうよ。
答えをもらう代わりに問題をきちんと問題として認識できる形であげれば
それで十分「交換」になる。
あとDLに関しては500くらいで試してみて。
確かpermissionの取り方によるのか知らんが50か100毎に確認出たはずだから。
ファイルごとにオーバーヘッドもかかるだろうしアーカイブ化した方がいい。
421デフォルトの名無しさん
2016/08/25(木) 00:05:19.06ID:eAOsu6G6 >>420
1日500DLなら現在味見中で、既に2週間ほど動作して問題は発生していない。
確認は一度も出ていない。ただ、出る環境の場合はこれは使えないのも確かだ。
まあ500DLなら人力でも十分あり得る範囲、さすがにこれでバグ遭遇はない。
ローレベルでのファイルのオーバーヘッドはない。
そもそも自動アーカイブはほぼ書き込みばかりだから投げ捨てだ。
また、データの大半はjpg等の圧縮済みファイルだ。
(個数としてはテキストの方が多いがjpg一枚でおつりが来る)
だからzipというよりtarなんだが、それもしない方がいいだろうという読みだ。
まあここら辺はこちらで試す。
> あとは君の態度次第で強力な仲間となるだろうよ。
セミコロンの位置でドヤア()、文法でドヤア()する奴がいくら居たって邪魔なだけ。
俺について助けになるのは、プログラミング上級者(10k行のコードを平気でメンテ出来る)か、
俺以上にJavaScriptの仕様に詳しい連中だけだ。
後者については俺がJavaScripterではないのでここの連中でも当てはまるケースも多い。
それが俺がここにいる理由。
前者について当てはまるのはここには居ても数人だ。
だから内部構成についての指摘は大半が俺から見ればデタラメに過ぎなく、ウザイだけ。
よって、そっちに流れないように上位アーキテクチャの話に絞っているわけでね。
1日500DLなら現在味見中で、既に2週間ほど動作して問題は発生していない。
確認は一度も出ていない。ただ、出る環境の場合はこれは使えないのも確かだ。
まあ500DLなら人力でも十分あり得る範囲、さすがにこれでバグ遭遇はない。
ローレベルでのファイルのオーバーヘッドはない。
そもそも自動アーカイブはほぼ書き込みばかりだから投げ捨てだ。
また、データの大半はjpg等の圧縮済みファイルだ。
(個数としてはテキストの方が多いがjpg一枚でおつりが来る)
だからzipというよりtarなんだが、それもしない方がいいだろうという読みだ。
まあここら辺はこちらで試す。
> あとは君の態度次第で強力な仲間となるだろうよ。
セミコロンの位置でドヤア()、文法でドヤア()する奴がいくら居たって邪魔なだけ。
俺について助けになるのは、プログラミング上級者(10k行のコードを平気でメンテ出来る)か、
俺以上にJavaScriptの仕様に詳しい連中だけだ。
後者については俺がJavaScripterではないのでここの連中でも当てはまるケースも多い。
それが俺がここにいる理由。
前者について当てはまるのはここには居ても数人だ。
だから内部構成についての指摘は大半が俺から見ればデタラメに過ぎなく、ウザイだけ。
よって、そっちに流れないように上位アーキテクチャの話に絞っているわけでね。
422デフォルトの名無しさん
2016/08/25(木) 07:26:33.09ID:kFTapBTb なーんだ
自分の手足となってくれる素直で言うこと聞いて優秀な部下もしくは奴隷がフリーで欲しいってことだったのか
サイコパスにちょっとでも強力しようと思った俺がバカだったわ
自分の手足となってくれる素直で言うこと聞いて優秀な部下もしくは奴隷がフリーで欲しいってことだったのか
サイコパスにちょっとでも強力しようと思った俺がバカだったわ
423デフォルトの名無しさん
2016/08/25(木) 08:20:27.91ID:99xpDjOR それにどうindexedDB使うのか全然わからん。
圧縮済みデータはそれ以上圧縮かからないから、圧縮しない、は
圧縮済みデータが一つのときだけじゃない?
エントロピーが偏れば圧縮は効くんだから、いくつか混ぜるとちゃんと圧縮は効くと思うけど。
そういう意味ではtarでアーカイブした上で、積極的な圧縮はせずに、Webサーバのgzip任せていいんでないの?
無駄な作り込みはバグ生むよ。
正直、普通に職業マやってたら、そんなステップ数のメンテは逆にしない。
逆に、しないように、スクラッチの時点でちゃんと切り分ける。
別に上級者気取りでも気にはしないけど、どう考えてもアーキが浮かばん。
アーキ屋何してんの?
何か情報を出すと俺のすごいシステムがパクられそうで怖い、みたいに聞こえるけど、そういうのって大体みんな通り過ぎて、王道はなるほど王道なんだな、って「そうしないだけ」だから、
気にせんで良いんじゃないの?
ホントに凄いかも!と思ったら、先にアイディアだけどっかに書いとけばいいよ。
圧縮済みデータはそれ以上圧縮かからないから、圧縮しない、は
圧縮済みデータが一つのときだけじゃない?
エントロピーが偏れば圧縮は効くんだから、いくつか混ぜるとちゃんと圧縮は効くと思うけど。
そういう意味ではtarでアーカイブした上で、積極的な圧縮はせずに、Webサーバのgzip任せていいんでないの?
無駄な作り込みはバグ生むよ。
正直、普通に職業マやってたら、そんなステップ数のメンテは逆にしない。
逆に、しないように、スクラッチの時点でちゃんと切り分ける。
別に上級者気取りでも気にはしないけど、どう考えてもアーキが浮かばん。
アーキ屋何してんの?
何か情報を出すと俺のすごいシステムがパクられそうで怖い、みたいに聞こえるけど、そういうのって大体みんな通り過ぎて、王道はなるほど王道なんだな、って「そうしないだけ」だから、
気にせんで良いんじゃないの?
ホントに凄いかも!と思ったら、先にアイディアだけどっかに書いとけばいいよ。
424デフォルトの名無しさん
2016/08/26(金) 18:32:39.75ID:wJ1YpBkQ425デフォルトの名無しさん
2016/08/26(金) 18:53:36.65ID:4RusDDpB もし本当に他者を見下してるように見えるんなら精神病院行ったほうが良い。
本当に見下してれば相手と会話したりしない。
本当に見下してれば相手と会話したりしない。
426デフォルトの名無しさん
2016/08/26(金) 23:31:04.14ID:LTYwvQxl バカほど人を見くびるもんだよ。
そして見くびれるからバカで居られる。
会話するメリットなんかいくらでもあるよ。ぬいぐるみは反抗しない「から。
反抗反論されると言うことは、自分の発言は反抗反論される程度の意味があんだ、むしろ相手が理解できない馬鹿なんだ」と思うことすらでき、一人で気持ちよくなれる。
そして見くびれるからバカで居られる。
会話するメリットなんかいくらでもあるよ。ぬいぐるみは反抗しない「から。
反抗反論されると言うことは、自分の発言は反抗反論される程度の意味があんだ、むしろ相手が理解できない馬鹿なんだ」と思うことすらでき、一人で気持ちよくなれる。
427デフォルトの名無しさん
2016/08/27(土) 05:01:58.71ID:T1cpNbqY 反抗しないぬいぐるみなんてここには居ないが?
後半は今回で言うと間違いなく ID:eAOsu6G6 の方だな
早く気付けよ
後半は今回で言うと間違いなく ID:eAOsu6G6 の方だな
早く気付けよ
2016/08/27(土) 05:49:03.76ID:eRYPSeFa
Slot
🍜🍜👻
💣💯🎴
💯🌸🍜
(LA: 0.55, 0.58, 0.53)
429デフォルトの名無しさん
2016/08/27(土) 09:23:29.57ID:4zJIWaih >>427
反抗するぬいぐるみが居るから、書きに来てるんだろ、って文書のつもりだったけど、眠くて誤字でわけわからん感じだな。すまん。
反抗するぬいぐるみが居るから、書きに来てるんだろ、って文書のつもりだったけど、眠くて誤字でわけわからん感じだな。すまん。
430デフォルトの名無しさん
2016/08/27(土) 21:50:54.70ID:T1cpNbqY よく分からんが反抗する側がバカにやり込められるのなら、
それはやり込められた側の方がもっと酷いんじゃないのか?
それはやり込められた側の方がもっと酷いんじゃないのか?
431デフォルトの名無しさん
2016/09/25(日) 17:50:33.44ID:Fmi0n6Ll Flashの仕組み全く知らないんだけどさ、Flashって高速再生出来るようにならないのかね?
以下知恵袋では「プレイヤーも自作」となっているので、
逆に言えばJavaScriptで高速プレイヤーを作成して入れ替えてしまえば可能なのか?
認証とかはさておき。
http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q10160742165
具体的にはGyaoの動画を1.5-2倍速で再生したい。要求スペックは以下。
・個人的に使えればいい。つまりコマンド手打ちが必要でもいい。
・再生速度は固定でいい。つまり最初から1.5xか2xで固定、再生中の変更は必要ない。
・最悪バッファでもいい。つまり30分の動画なら15分バッファした後の2x再生でいい。
・ダウンロードすれば出来るのか?しかし面倒なので出来ればダイレクトで。
以下知恵袋では「プレイヤーも自作」となっているので、
逆に言えばJavaScriptで高速プレイヤーを作成して入れ替えてしまえば可能なのか?
認証とかはさておき。
http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q10160742165
具体的にはGyaoの動画を1.5-2倍速で再生したい。要求スペックは以下。
・個人的に使えればいい。つまりコマンド手打ちが必要でもいい。
・再生速度は固定でいい。つまり最初から1.5xか2xで固定、再生中の変更は必要ない。
・最悪バッファでもいい。つまり30分の動画なら15分バッファした後の2x再生でいい。
・ダウンロードすれば出来るのか?しかし面倒なので出来ればダイレクトで。
432デフォルトの名無しさん
2016/09/25(日) 19:27:04.48ID:r4NaSC4t スクリプトでURI解析→ネットワークに対応した外部プレーヤで再生
433デフォルトの名無しさん
2016/09/25(日) 21:06:19.30ID:Fmi0n6Ll 確かにそんなに難しく考える必要はないのかもね。
で、試してみたんだが、今のところ駄目だ。
データ取得先は当然あっさり分かる。
それをGOMプレイヤーに食わせてみた。
曰く、「ストリーミングサーバーが見つかりません」
ただGOMプレーヤー自体も滅多に使わないから、使い方が間違っているかも。
URLもこれでいいのかは謎だし。
なおAlquadeLiteも試したが、こちらは起動するもののFlashPlayerがクラッシュして駄目だった。
まあ何かあればよろしく。
で、試してみたんだが、今のところ駄目だ。
データ取得先は当然あっさり分かる。
それをGOMプレイヤーに食わせてみた。
曰く、「ストリーミングサーバーが見つかりません」
ただGOMプレーヤー自体も滅多に使わないから、使い方が間違っているかも。
URLもこれでいいのかは謎だし。
なおAlquadeLiteも試したが、こちらは起動するもののFlashPlayerがクラッシュして駄目だった。
まあ何かあればよろしく。
434デフォルトの名無しさん
2016/09/25(日) 23:14:29.89ID:Fmi0n6Ll 結局「GYAO動画ダウンローダJava」を使って高速再生は出来た。
ただし事前DLが必要だが、10倍速くらいでDL出来るので問題はない。
ただ正直ちょっと複雑だ。
こんなに簡単に出来るのなら公式で用意してくれよというのと、
意外に高速再生も快適ではないのでやっぱり用意する意味もないのかとも。
いずれにしても情報をくれた人はありがとう。
ただし事前DLが必要だが、10倍速くらいでDL出来るので問題はない。
ただ正直ちょっと複雑だ。
こんなに簡単に出来るのなら公式で用意してくれよというのと、
意外に高速再生も快適ではないのでやっぱり用意する意味もないのかとも。
いずれにしても情報をくれた人はありがとう。
435デフォルトの名無しさん
2016/10/16(日) 16:56:27.94ID:u0ZoFejP ・「クライアントサイド」のJavaScriptでは、innerHTMLをエスケープ(サニタイズ)する必要ないのか?
サイトのJSON_APIがスクリプトタグを含む文字列を送ってきていて、
こちらのGreaseMonkeyスクリプトは今はそれをそのまま表示してしまっている。(見た目は消える)
これはXSS的に問題だと思っていたのだが、以下を見ると、またこちらでも試した限り、
divタグの中身等としてappendChild/insertBeforeする分には実行されないようだ。
> が!残念ながらこの場合はscriptは動きません。
> http://tech-blog.tsukaby.com/archives/894
とはいえ、見た目消えてしまうのでどのみち修正は必要なのだが、
XSSの脆弱性という意味での対策は必要ないということでいいのだろうか?
俺はJavaScriptの専門家ではない。
したがって情報は基本的に全てWebなのだが、例えば以下のように、
> 例えば、DOM Based XSSを発生させる典型的なコードの例として、
> 以下のようなinnerHTMLの使用があったとします。
> // ★★★脆弱なコードの例★★★
> var div = document.getElementById( "msg" );
> div.innerHTML = some_text; // 外部からコントロール可能な文字列
> http://www.atmarkit.co.jp/ait/articles/1312/17/news010_2.html
とあって、その後「ブラウザー上で」エスケープするなりcreateTextNodeをしているわけだが、
これって全くの間違いで、必要ないのだろうか?
(サーバーサイドならもちろん必要として、クライアントサイドなら問題なしでいいのか?
今のところ、筆者もこれらを混同しているように見える。
記事は2013/12と古いのだが、これ以降に仕様変更されたのか?
なお上記一つ目(動かないと書いている方)のブログは2015/04)
なお念のため再度言うが、「クライアントサイド」で「innerHTML」の場合。
「サーバーサイド」でもなく、「outerHTML」でもない。
サイトのJSON_APIがスクリプトタグを含む文字列を送ってきていて、
こちらのGreaseMonkeyスクリプトは今はそれをそのまま表示してしまっている。(見た目は消える)
これはXSS的に問題だと思っていたのだが、以下を見ると、またこちらでも試した限り、
divタグの中身等としてappendChild/insertBeforeする分には実行されないようだ。
> が!残念ながらこの場合はscriptは動きません。
> http://tech-blog.tsukaby.com/archives/894
とはいえ、見た目消えてしまうのでどのみち修正は必要なのだが、
XSSの脆弱性という意味での対策は必要ないということでいいのだろうか?
俺はJavaScriptの専門家ではない。
したがって情報は基本的に全てWebなのだが、例えば以下のように、
> 例えば、DOM Based XSSを発生させる典型的なコードの例として、
> 以下のようなinnerHTMLの使用があったとします。
> // ★★★脆弱なコードの例★★★
> var div = document.getElementById( "msg" );
> div.innerHTML = some_text; // 外部からコントロール可能な文字列
> http://www.atmarkit.co.jp/ait/articles/1312/17/news010_2.html
とあって、その後「ブラウザー上で」エスケープするなりcreateTextNodeをしているわけだが、
これって全くの間違いで、必要ないのだろうか?
(サーバーサイドならもちろん必要として、クライアントサイドなら問題なしでいいのか?
今のところ、筆者もこれらを混同しているように見える。
記事は2013/12と古いのだが、これ以降に仕様変更されたのか?
なお上記一つ目(動かないと書いている方)のブログは2015/04)
なお念のため再度言うが、「クライアントサイド」で「innerHTML」の場合。
「サーバーサイド」でもなく、「outerHTML」でもない。
436デフォルトの名無しさん
2016/10/17(月) 00:31:40.71ID:B8wMv80N >>435
script タグでなくとも イベントハンドラ( onxxxx = )で動作するコードを注入されたら危険だろう
script タグでなくとも イベントハンドラ( onxxxx = )で動作するコードを注入されたら危険だろう
437デフォルトの名無しさん
2016/10/17(月) 01:16:39.60ID:XzUmA52N438デフォルトの名無しさん
2016/10/18(火) 13:06:11.48ID:GiAjO0tK ぶっちゃけいかなる脆弱性があったとしても、お金が関わるようなサイトでなければ関係ない
例えばある種のURLで飛ばされた時にXSS脆弱性があったとしても、
それは悪意のあるサイトから遷移したユーザーの責任。
それにCookieが抜かれようと変な表示がされようと何か致命的な問題になることはない。
いたずらレベル。
例えばある種のURLで飛ばされた時にXSS脆弱性があったとしても、
それは悪意のあるサイトから遷移したユーザーの責任。
それにCookieが抜かれようと変な表示がされようと何か致命的な問題になることはない。
いたずらレベル。
439デフォルトの名無しさん
2016/10/18(火) 22:14:37.24ID:8mVkPqez それはその通りだし、神経質にやる気はない。
逆にそのためのブラウザの制限に辟易している状況だし。
とはいえ、JSON_APIの中身がtextなのかHTML文字列なのかは気にしておかないといけない。
その上で、どこまでやるかを各プロジェクト毎に決めればいいこと。
逆にそのためのブラウザの制限に辟易している状況だし。
とはいえ、JSON_APIの中身がtextなのかHTML文字列なのかは気にしておかないといけない。
その上で、どこまでやるかを各プロジェクト毎に決めればいいこと。
440デフォルトの名無しさん
2016/10/19(水) 08:20:38.16ID:pQsxuliv そういうとこを気にするのは愚か
CSPを使い、それが通るように書けば良いだけ
CSPを使い、それが通るように書けば良いだけ
441デフォルトの名無しさん
2016/11/21(月) 01:56:59.51ID:jF13U7nK IndexedDBのスループットが全く出ないんだが、誰か高速実装サンプルコードを知らないか?
URLくれると有り難い。
こちらの実装では、スクレイプ結果の9000ファイルを書き込むのに15-20分かかっている。
全体の容量は、IndexedDB格納済みで20MB程度、tarファイルだと30MB弱といったところ。
キャッシュ済みの状態なら再スクレイプには2-3分しかかからない。
これを<a download=xxx>でtarファイルにするのには数秒しかかからないが、(最後のダウンロードに数秒)
IndexedDBに全て書き込むには15-20分かかる。
この場合はスクレイプと同時に内部的にtarファイルを作成しており、
大半は再スクレイプの時間なので比較としては不適だが、5-10倍程度遅い。(A)
なおtarファイルの展開には2-3分かかるので、これとの比較でも5-10倍程度遅い。(B)
現状、ファイルに落とす場合はスクレイプの方が明らかに遅いので全く問題ないのだが、
IDBに格納する場合はスクレイプよりも遅いのでそこで詰まる。
といっても2倍も遅くはなく、またスクレイプ側は通常は90%以上idle状態なので
現実的には問題は発生しないはずだが、それにしても遅すぎる。
トランザクション等の機能は所詮CPU時間なので、何をやってもここまで遅くはならない。
(chromeの実装が酷くても、また俺の実装が酷くても)
上記ファイル時間(B)でも5-10倍遅いのは何かおかしい。
とはいえ使い方が悪い可能性も多々ある訳なのだが、
とりあえず高速実装サンプルコードがあれば比較出来るので助かります。
実装/実験の詳細は、上記の通り、9000ファイルをIDBに格納、全体で20MB程度、
objectStoreは多めで150個程度、その中に30-150個くらいのファイルがそれぞれ格納される。
トランザクションはオブジェクトストア毎に纏めており、
実際のトランザクションは40-80個程度で、大半は平行可能。(仕様としては)
一つのトランザクション内には20個ずつputを入れている。
(トランザクション単位でのロールバックなので今回は20個くらいが適当かと思っている)
ただしいかんせん書き込んでくれない。
何かヒントあればよろしく。
URLくれると有り難い。
こちらの実装では、スクレイプ結果の9000ファイルを書き込むのに15-20分かかっている。
全体の容量は、IndexedDB格納済みで20MB程度、tarファイルだと30MB弱といったところ。
キャッシュ済みの状態なら再スクレイプには2-3分しかかからない。
これを<a download=xxx>でtarファイルにするのには数秒しかかからないが、(最後のダウンロードに数秒)
IndexedDBに全て書き込むには15-20分かかる。
この場合はスクレイプと同時に内部的にtarファイルを作成しており、
大半は再スクレイプの時間なので比較としては不適だが、5-10倍程度遅い。(A)
なおtarファイルの展開には2-3分かかるので、これとの比較でも5-10倍程度遅い。(B)
現状、ファイルに落とす場合はスクレイプの方が明らかに遅いので全く問題ないのだが、
IDBに格納する場合はスクレイプよりも遅いのでそこで詰まる。
といっても2倍も遅くはなく、またスクレイプ側は通常は90%以上idle状態なので
現実的には問題は発生しないはずだが、それにしても遅すぎる。
トランザクション等の機能は所詮CPU時間なので、何をやってもここまで遅くはならない。
(chromeの実装が酷くても、また俺の実装が酷くても)
上記ファイル時間(B)でも5-10倍遅いのは何かおかしい。
とはいえ使い方が悪い可能性も多々ある訳なのだが、
とりあえず高速実装サンプルコードがあれば比較出来るので助かります。
実装/実験の詳細は、上記の通り、9000ファイルをIDBに格納、全体で20MB程度、
objectStoreは多めで150個程度、その中に30-150個くらいのファイルがそれぞれ格納される。
トランザクションはオブジェクトストア毎に纏めており、
実際のトランザクションは40-80個程度で、大半は平行可能。(仕様としては)
一つのトランザクション内には20個ずつputを入れている。
(トランザクション単位でのロールバックなので今回は20個くらいが適当かと思っている)
ただしいかんせん書き込んでくれない。
何かヒントあればよろしく。
442デフォルトの名無しさん
2016/11/21(月) 02:24:13.88ID:xTCFhIWI またお前か。
なぜそんな事をブラウザでやるか、それもindexedDBになぜ入れるかわからんが、
インデックス貼り過ぎではないか、
WebWorkerやServiceWorker使わずに表スレッドでやってないか
くらいかな。
スクレイプの方がはやい、DBの方が遅い、と言っても、同時に走るわけでは無いよ、ネイティブの機能でない限り。
なぜそんな事をブラウザでやるか、それもindexedDBになぜ入れるかわからんが、
インデックス貼り過ぎではないか、
WebWorkerやServiceWorker使わずに表スレッドでやってないか
くらいかな。
スクレイプの方がはやい、DBの方が遅い、と言っても、同時に走るわけでは無いよ、ネイティブの機能でない限り。
443デフォルトの名無しさん
2016/11/21(月) 02:56:54.44ID:jF13U7nK いや、表スレッドでやっているぞ。
ただそれは実際には問題になっているようには見えないが。
もちろん同期APIは使ってない。
つまり当然非同期だし、表スレッドで待つことはない。
> 同時に走るわけでは無い
あまりにスループットが低いのが気になっているわけだが、
確かにこの意味では「詰まる」事はあり得ないのも事実だな。
> インデックス貼り過ぎではないか
こちらはインデックスは使っていない。
インデックス使わないと超遅いとかいうのも見かけたが、
(覚えでは)3-4年前の記事だったし、取り下げていたのであてにならないと見たが、使わないと駄目か?
こちらはキーパス無し、キージェネ無し。外部キーを自前で供給している。
(要するにlocalStorageの容量増加版として使用している。ただし非同期だからどうにも使いにくいが。)
> データベースを構築する
> キーパス キージェネレータ
> https://developer.mozilla.org/ja/docs/Web/API/IndexedDB_API/Using_IndexedDB
> なぜそんな事をブラウザでやるか
一番手軽だからだよ。ブラウズする時にはブラウザは必ず使う。
アーカイブ勝手に取れてれば楽でしょ。
別ソフト起動するのが面倒でない人はそうすればいい。
> indexedDB
ブラウザ側から「消せる」方が使い勝手がいいから。
なおファイルに落とす機能はもう完成済みで、サイトのミラーが勝手に構築出来るようになっている。
もちろん外部スクリプトでtarファイルを展開しなければならないが、これは仕様的に仕方ない。
IndexedDBはボロすぎて諦めていたんだが、微妙に使えそうになってきたので色気を出している。
というか俺はGreaseMonkeyだからね。サイトのスクリプトではないからあしからず。
ただそれは実際には問題になっているようには見えないが。
もちろん同期APIは使ってない。
つまり当然非同期だし、表スレッドで待つことはない。
> 同時に走るわけでは無い
あまりにスループットが低いのが気になっているわけだが、
確かにこの意味では「詰まる」事はあり得ないのも事実だな。
> インデックス貼り過ぎではないか
こちらはインデックスは使っていない。
インデックス使わないと超遅いとかいうのも見かけたが、
(覚えでは)3-4年前の記事だったし、取り下げていたのであてにならないと見たが、使わないと駄目か?
こちらはキーパス無し、キージェネ無し。外部キーを自前で供給している。
(要するにlocalStorageの容量増加版として使用している。ただし非同期だからどうにも使いにくいが。)
> データベースを構築する
> キーパス キージェネレータ
> https://developer.mozilla.org/ja/docs/Web/API/IndexedDB_API/Using_IndexedDB
> なぜそんな事をブラウザでやるか
一番手軽だからだよ。ブラウズする時にはブラウザは必ず使う。
アーカイブ勝手に取れてれば楽でしょ。
別ソフト起動するのが面倒でない人はそうすればいい。
> indexedDB
ブラウザ側から「消せる」方が使い勝手がいいから。
なおファイルに落とす機能はもう完成済みで、サイトのミラーが勝手に構築出来るようになっている。
もちろん外部スクリプトでtarファイルを展開しなければならないが、これは仕様的に仕方ない。
IndexedDBはボロすぎて諦めていたんだが、微妙に使えそうになってきたので色気を出している。
というか俺はGreaseMonkeyだからね。サイトのスクリプトではないからあしからず。
444デフォルトの名無しさん
2016/11/21(月) 04:59:18.67ID:+MgjqZsm 愚直に1つずつ保存しようとするから愚直なパフォーマンスしかでない。
DBには圧縮ファイル1つしか保存しない。
利用するときは解凍してメモリ上で1つずつ読み書きする。
最後に圧縮して保存する。これで問題ない。
もしくはキャッシュ用に設計されたCacheStorageを使う。
DBには圧縮ファイル1つしか保存しない。
利用するときは解凍してメモリ上で1つずつ読み書きする。
最後に圧縮して保存する。これで問題ない。
もしくはキャッシュ用に設計されたCacheStorageを使う。
445デフォルトの名無しさん
2016/11/21(月) 08:17:47.88ID:xTCFhIWI >>443
だから、表スレッドでやるから遅いんよ。
同期APIでなくとも、常に一本しか走らん。
インデックス使わないと中身探すのに全舐めだよ。
もし、挿入でなくupdateしてるなら絶対に必要。これはライブラリとか使ってなくて手で書いてたら気づいてると思うけど。
アーカイブは普通、拡張書いてそこからDOM舐めて、http通信でサーバに送ったりindexedDBに保存したりファイルにしたりする。
グリモンのスクリプトでもあんま変わらん。
だから、表スレッドでやるから遅いんよ。
同期APIでなくとも、常に一本しか走らん。
インデックス使わないと中身探すのに全舐めだよ。
もし、挿入でなくupdateしてるなら絶対に必要。これはライブラリとか使ってなくて手で書いてたら気づいてると思うけど。
アーカイブは普通、拡張書いてそこからDOM舐めて、http通信でサーバに送ったりindexedDBに保存したりファイルにしたりする。
グリモンのスクリプトでもあんま変わらん。
446デフォルトの名無しさん
2016/11/21(月) 15:43:00.92ID:LVMdN4w/ とりあえず必要最小限のコードを全部提示しろ
447デフォルトの名無しさん
2016/11/21(月) 23:45:11.05ID:jF13U7nK すまん解決したかも。
詳細を投稿しようとしたが何故かNGワード規制なので細切れで試す。
詳細を投稿しようとしたが何故かNGワード規制なので細切れで試す。
448デフォルトの名無しさん
2016/11/21(月) 23:46:56.58ID:jF13U7nK 俺はIDBTransaction.oncomplete内でdb.close()していたのだが、
以下ではIDBRequest.onsuccess内でやっており、
//nparashuram.com/IndexedDB/perf/#Transaction based on Write
それってありか?ということでMDNを確認した結果、MDNでもそうなので
https://developer.mozilla.org/ja/docs/Web/API/IDBDatabase/close
パッチして味見した結果、とりあえず倍くらいにはなった。
それでもまだ遅いが、今は安定して動く状態ではないので詳細は確認出来ない。
本修正して安定動作させ、まだ遅いようならもう一度投稿する。
ちなみにコード自体は上記上側と似たようなもの。ただしoncompleteを使っていた。
以下ではIDBRequest.onsuccess内でやっており、
//nparashuram.com/IndexedDB/perf/#Transaction based on Write
それってありか?ということでMDNを確認した結果、MDNでもそうなので
https://developer.mozilla.org/ja/docs/Web/API/IDBDatabase/close
パッチして味見した結果、とりあえず倍くらいにはなった。
それでもまだ遅いが、今は安定して動く状態ではないので詳細は確認出来ない。
本修正して安定動作させ、まだ遅いようならもう一度投稿する。
ちなみにコード自体は上記上側と似たようなもの。ただしoncompleteを使っていた。
449デフォルトの名無しさん
2016/11/21(月) 23:47:37.28ID:jF13U7nK 上記一つ目、httpが引っかかったようだ。脳内補完よろしく。
450デフォルトの名無しさん
2016/11/22(火) 01:12:38.73ID:62WBcce4 >>448
あのさあ。
なんで強引にそうむりやり解決するのかわからん。
db.close使うことなんかほとんど無くねえか?
当たり前のようにonsuccessでトランザクションcommitするだけじゃねえの?
ずーっと偉そうだけど、脳筋が知恵の輪を強引にバラしてドヤ顔してるように見えて仕方ない。
ラグビー部員かゴリラレベルだよ、それ。
あのさあ。
なんで強引にそうむりやり解決するのかわからん。
db.close使うことなんかほとんど無くねえか?
当たり前のようにonsuccessでトランザクションcommitするだけじゃねえの?
ずーっと偉そうだけど、脳筋が知恵の輪を強引にバラしてドヤ顔してるように見えて仕方ない。
ラグビー部員かゴリラレベルだよ、それ。
451デフォルトの名無しさん
2016/11/22(火) 23:13:11.58ID:bRc12BV/ oncomplete->onsuccessについては失敗した。
これは積み込みが早くなる(見た目終わったように見える)だけであって、
スループットは変わってない。
db.open->db.close間の時間を計測していたので間違えた。
意味としては並行トランザクションの数を増やせば同じだし、実際そんな感じだ。
onsuccessでやると他情報のライフタイムがずれるので、話が面倒になっただけだった。
これは積み込みが早くなる(見た目終わったように見える)だけであって、
スループットは変わってない。
db.open->db.close間の時間を計測していたので間違えた。
意味としては並行トランザクションの数を増やせば同じだし、実際そんな感じだ。
onsuccessでやると他情報のライフタイムがずれるので、話が面倒になっただけだった。
452デフォルトの名無しさん
2016/11/22(火) 23:23:12.59ID:bRc12BV/ >>444
いや愚直なパフォーマンスでいいんだが、それすら出てないから問題視しているわけで。
ファイルと等速かやや遅いくらいなら十分なんだが。
圧縮展開を自前でやるのはさすがに面倒だ。
というかそれが常に成り立つならその機能ごと組み込んでおけという話だし、
実際そうなっている感触だ。
だからバグ対策でなければ自前でわざわざやる意味はないはず。
IndexedDBに関しては、基本的には「キー」となるものを「全体を一覧」出来る場所に保存して、
「本体」への参照をそれに持たせればよいだけだから、
ちゃんと実装してあれば大型ファイルへのアクセスはほぼファイルと等速になる。
だからFireFoxがFileSystemAPIを実装しない理由も妥当なのだが、
全然そうなってないからあれ?ってことで。(まだchromeでしか試してないが)
キャッシュ用に設計されている場合も
大型ファイル本体へのアクセス速度は上記の通り大して変わらないはず。
ただIndexedDBのようなインデックス検索が必要ないからその分速いが、
今はそこが見えるほどの状況になっていない。
ちなみに後述するが読み出しは速い。
(絶対的に速いかは未確認だが、書き込みと比べて50倍速い)
いや愚直なパフォーマンスでいいんだが、それすら出てないから問題視しているわけで。
ファイルと等速かやや遅いくらいなら十分なんだが。
圧縮展開を自前でやるのはさすがに面倒だ。
というかそれが常に成り立つならその機能ごと組み込んでおけという話だし、
実際そうなっている感触だ。
だからバグ対策でなければ自前でわざわざやる意味はないはず。
IndexedDBに関しては、基本的には「キー」となるものを「全体を一覧」出来る場所に保存して、
「本体」への参照をそれに持たせればよいだけだから、
ちゃんと実装してあれば大型ファイルへのアクセスはほぼファイルと等速になる。
だからFireFoxがFileSystemAPIを実装しない理由も妥当なのだが、
全然そうなってないからあれ?ってことで。(まだchromeでしか試してないが)
キャッシュ用に設計されている場合も
大型ファイル本体へのアクセス速度は上記の通り大して変わらないはず。
ただIndexedDBのようなインデックス検索が必要ないからその分速いが、
今はそこが見えるほどの状況になっていない。
ちなみに後述するが読み出しは速い。
(絶対的に速いかは未確認だが、書き込みと比べて50倍速い)
453デフォルトの名無しさん
2016/11/22(火) 23:24:53.24ID:bRc12BV/ >>445
いやIndexedDBは基本的に別スレッドで実行される。
いちいち "in a separate thread" って書いてあるだろ。
俺は使ったこと無いが多分Nodeと同じ。
> https://developer.mozilla.org/ja/docs/Web/API/IDBObjectStore
ちなみにプロファイラーで確認したが、表スレッドは完全に遊んでいる。
60秒間で100ms程度動いていて、他はアイドル。
OS上のCPUメーターでも遊んでいるし、いずれにしてもCPUがらみで引っかかっている感じではない。
ただ、I/Oで引っかかるなら普通のファイルと同速になるはずなのだが、これがないから不思議に思っている。
> インデックス使わないと中身探すのに全舐めだよ。
> もし、挿入でなくupdateしてるなら絶対に必要。これはライブラリとか使ってなくて手で書いてたら気づいてると思うけど。
これはないよ。
普通にIndexedDBを実装する場合、外部キーもインデックスとして実装するでしょ。
今は更地(データベースそのものの構築、onupgradeneeded でバージョン1)から始めて9000ファイル書いている。
全舐めの問題なら1000個目のファイルと9000個目のファイルで9倍速度が落ちるはずだけど、それは全くない。
先にも言ったがインデックス検索はCPU時間(usオーダー)の話だ。
実際にそこも遅いのかも知れないが、今はそこが遅くても見えないほど他が遅い。
なおリードと勘違いしているのなら、今問題になっているのはライトだけ。
後述するが、リードはとりあえず十分な速度が出ている。
ちなみにIDBCursor.update()は使っていない。俺が使っているのはIDBObjectStore.put()。
いやIndexedDBは基本的に別スレッドで実行される。
いちいち "in a separate thread" って書いてあるだろ。
俺は使ったこと無いが多分Nodeと同じ。
> https://developer.mozilla.org/ja/docs/Web/API/IDBObjectStore
ちなみにプロファイラーで確認したが、表スレッドは完全に遊んでいる。
60秒間で100ms程度動いていて、他はアイドル。
OS上のCPUメーターでも遊んでいるし、いずれにしてもCPUがらみで引っかかっている感じではない。
ただ、I/Oで引っかかるなら普通のファイルと同速になるはずなのだが、これがないから不思議に思っている。
> インデックス使わないと中身探すのに全舐めだよ。
> もし、挿入でなくupdateしてるなら絶対に必要。これはライブラリとか使ってなくて手で書いてたら気づいてると思うけど。
これはないよ。
普通にIndexedDBを実装する場合、外部キーもインデックスとして実装するでしょ。
今は更地(データベースそのものの構築、onupgradeneeded でバージョン1)から始めて9000ファイル書いている。
全舐めの問題なら1000個目のファイルと9000個目のファイルで9倍速度が落ちるはずだけど、それは全くない。
先にも言ったがインデックス検索はCPU時間(usオーダー)の話だ。
実際にそこも遅いのかも知れないが、今はそこが遅くても見えないほど他が遅い。
なおリードと勘違いしているのなら、今問題になっているのはライトだけ。
後述するが、リードはとりあえず十分な速度が出ている。
ちなみにIDBCursor.update()は使っていない。俺が使っているのはIDBObjectStore.put()。
454デフォルトの名無しさん
2016/11/22(火) 23:34:52.08ID:bRc12BV/ 一応パラメータ振ってみたが、
トランザクションの数を絞る(40->2)と目に見えて遅くなるので、並列はしているっぽい。
ただし増やしても速度は上がらない。
一つのトランザクション内のput数を増やしても明確な速度変化は見られない。(20->20-200)
問題点を整理すると、
・I/O律速ならファイルと同等程度になるはずだが、5-10倍遅い。(ライトだけ)
・CPU律速ではないように見える。CPUは空きまくり、スレッドもほぼ全てアイドル時間。
で、何が引っかかってこんなに遅いの?という話。
ちなみに読み出しは十分速く、IndexedDBの中身を丸ごとtarファイルにして出力するのに10秒程度。
格納に20分かかるのに、読み出しには10秒しかかからない。
(読み出しに10秒=中身を読みだしてtarファイルをblobとして作成するまでに10秒、
その後ダウンロードする時にさらに10秒かかる)
このtarファイルを7-Zipで更地に展開するには25秒。
cygwinで既にあるファイルシステムに上書き展開するのには2-3分かかった。(これが前の話)
格納だけ異常に遅いんだが、これって何?
単純比較するとリードと比べてライトが45-120倍遅い。
ただまあwriteが遅いのは事実のようだが、ここにあるように50k records for 10 sec ならいいんだが。
ttp://stackoverflow.com/questions/22577199/indexeddb-access-speed-and-efficiency
記事は古いがここ見る限り駄目なことはやってなさそう。
ttp://blog.nparashuram.com/2013/04/indexeddb-performance-comparisons-part-2.html
既に書いたとおり、コードはここと似たようなものだが、oncompleteを使っている。
ttp://nparashuram.com/IndexedDB/perf/#Transaction based on Write
とはいえライトだけ50倍遅いのは俺の使い方に問題があるのだろう。
実装が如何にボロくてもここまでにはならないし。
というわけで高速書き込みのサンプルコードがあればURLよろしく。
トランザクションの数を絞る(40->2)と目に見えて遅くなるので、並列はしているっぽい。
ただし増やしても速度は上がらない。
一つのトランザクション内のput数を増やしても明確な速度変化は見られない。(20->20-200)
問題点を整理すると、
・I/O律速ならファイルと同等程度になるはずだが、5-10倍遅い。(ライトだけ)
・CPU律速ではないように見える。CPUは空きまくり、スレッドもほぼ全てアイドル時間。
で、何が引っかかってこんなに遅いの?という話。
ちなみに読み出しは十分速く、IndexedDBの中身を丸ごとtarファイルにして出力するのに10秒程度。
格納に20分かかるのに、読み出しには10秒しかかからない。
(読み出しに10秒=中身を読みだしてtarファイルをblobとして作成するまでに10秒、
その後ダウンロードする時にさらに10秒かかる)
このtarファイルを7-Zipで更地に展開するには25秒。
cygwinで既にあるファイルシステムに上書き展開するのには2-3分かかった。(これが前の話)
格納だけ異常に遅いんだが、これって何?
単純比較するとリードと比べてライトが45-120倍遅い。
ただまあwriteが遅いのは事実のようだが、ここにあるように50k records for 10 sec ならいいんだが。
ttp://stackoverflow.com/questions/22577199/indexeddb-access-speed-and-efficiency
記事は古いがここ見る限り駄目なことはやってなさそう。
ttp://blog.nparashuram.com/2013/04/indexeddb-performance-comparisons-part-2.html
既に書いたとおり、コードはここと似たようなものだが、oncompleteを使っている。
ttp://nparashuram.com/IndexedDB/perf/#Transaction based on Write
とはいえライトだけ50倍遅いのは俺の使い方に問題があるのだろう。
実装が如何にボロくてもここまでにはならないし。
というわけで高速書き込みのサンプルコードがあればURLよろしく。
455デフォルトの名無しさん
2016/11/23(水) 00:39:24.04ID:Bkme+Kby もう出来てる、だがなんだか知らんが、それ捨てたほうが良いとおもうわ。
普通はこう言うのオフラインモード持ったプロキシとして作る。
普通はこう言うのオフラインモード持ったプロキシとして作る。
456デフォルトの名無しさん
2016/11/23(水) 23:07:06.62ID:V62ycJbx とりあえず自力で辿り着けそうな雰囲気になってきた。
速いコードを見つけた、というかMDNのそのままをコピペしてコンソールで試したら十分速かった。
確実にこちらのコードに何か原因があるのだろう。
もし調べてくれてたらありがとう。
速いコードを見つけた、というかMDNのそのままをコピペしてコンソールで試したら十分速かった。
確実にこちらのコードに何か原因があるのだろう。
もし調べてくれてたらありがとう。
457デフォルトの名無しさん
2016/11/24(木) 15:10:21.36ID:Mx4OpUDM この白痴
IDBを使うな、使うにしてもそう使うなと言われてるのに聞かないんだもんな
救いようがない
IDBを使うな、使うにしてもそう使うなと言われてるのに聞かないんだもんな
救いようがない
458デフォルトの名無しさん
2016/11/24(木) 16:54:40.99ID:HdRBGkCM なんともならんよなぁ。
何故クローム拡張を作らんか(jsで書けるし、妥当な保存方法だし、クロスドメインで苦労しなくても良いし、もし配布を気にしてるならzipでも蒔ける)
色んな疑問が湧く。
要は、ロスカット出来ない類の奴なんだと思うよ。
今まで掛けた工数が惜しいとか、自分が未熟だと認めるのが悔しい、とか、
自分は一番良い方法を考えてて、その中で「ちょっとだけドキュメントが未熟だから」実現方法が分からない事を聞いてるだけなのになんだこいつら、とか。
ベンチャーか中小企業の社長に居そうな奴。
5年目か10年目に破産する類の。
何故クローム拡張を作らんか(jsで書けるし、妥当な保存方法だし、クロスドメインで苦労しなくても良いし、もし配布を気にしてるならzipでも蒔ける)
色んな疑問が湧く。
要は、ロスカット出来ない類の奴なんだと思うよ。
今まで掛けた工数が惜しいとか、自分が未熟だと認めるのが悔しい、とか、
自分は一番良い方法を考えてて、その中で「ちょっとだけドキュメントが未熟だから」実現方法が分からない事を聞いてるだけなのになんだこいつら、とか。
ベンチャーか中小企業の社長に居そうな奴。
5年目か10年目に破産する類の。
459デフォルトの名無しさん
2016/11/25(金) 00:21:37.68ID:9S7zID8/ こちらは解決しつつある。今はテスト中だ。前と同様にとちっているかもしれないが。
とはいえ、俺はお前らが何でそこまで自信過剰なのかさっぱり分からない。
5-10年目に破産したベンチャーの社長を笑えるのは、
ベンチャーを起こして10年以上持たせた奴だけだぞ。
お前らがそうだとは到底思えない。
そんなんだからゆとりは意識高い系()とか言われるんだよ。
意識高いだけで中身がないからウザイだけ。
まあお前らに付ける薬もないのも事実だが。
俺に付ける薬もないのと同様にね。
お前ら、OSSに参加もしてないだろ。
よくもまあそれで、としか思えないけどね。
とはいえ、俺はお前らが何でそこまで自信過剰なのかさっぱり分からない。
5-10年目に破産したベンチャーの社長を笑えるのは、
ベンチャーを起こして10年以上持たせた奴だけだぞ。
お前らがそうだとは到底思えない。
そんなんだからゆとりは意識高い系()とか言われるんだよ。
意識高いだけで中身がないからウザイだけ。
まあお前らに付ける薬もないのも事実だが。
俺に付ける薬もないのと同様にね。
お前ら、OSSに参加もしてないだろ。
よくもまあそれで、としか思えないけどね。
460デフォルトの名無しさん
2016/11/25(金) 00:52:34.50ID:SsHeBd9H >>459
メンテナしてるけどそれが何か、って話な位で、得意になるもんでも無いんじゃ?
参加とやらの程度にもよるけど、ある程度やってりゃ、プルリクくらい普通に出せるだろ。
コミッタって関わるにあたって特別な事なんもしてないと思うけど。
リポジトリ晒せと言われたら色んなものが傷つくからやらんが。
「お前らがそうとは到底思えない」
「してないだろ」
「よくもまあそれで」
ってまぁ意識たけえなぁ。
ベンチャー起こして10年も持たさんで良いだろ。
まともな会社でそれなりに勤めて、何度か転職して、それなりの立場にいる方が余程視野が広がるよ。
少なくとも金の算段を必要以上にせんで良いからな。
大→中堅→ベンチャー→大と転職して色んな良いところ悪いところ見てきたからわかるが、お前は悪いところの総和みたいな姿しとるよ。
メンテナしてるけどそれが何か、って話な位で、得意になるもんでも無いんじゃ?
参加とやらの程度にもよるけど、ある程度やってりゃ、プルリクくらい普通に出せるだろ。
コミッタって関わるにあたって特別な事なんもしてないと思うけど。
リポジトリ晒せと言われたら色んなものが傷つくからやらんが。
「お前らがそうとは到底思えない」
「してないだろ」
「よくもまあそれで」
ってまぁ意識たけえなぁ。
ベンチャー起こして10年も持たさんで良いだろ。
まともな会社でそれなりに勤めて、何度か転職して、それなりの立場にいる方が余程視野が広がるよ。
少なくとも金の算段を必要以上にせんで良いからな。
大→中堅→ベンチャー→大と転職して色んな良いところ悪いところ見てきたからわかるが、お前は悪いところの総和みたいな姿しとるよ。
461デフォルトの名無しさん
2016/11/25(金) 01:07:59.74ID:bE83eHTG 一人が自信満々なのを否定するのと大多数が自信満々なのを否定するのは意味が違うからな
462デフォルトの名無しさん
2016/11/25(金) 01:21:08.20ID:9S7zID8/ >>460
お前がそれならそれでいいよとしか言いようがない。
それがWeb系といわれる所以だろうし。
別に俺はお前に評価される必要なんてないし。
OSS云々ってのは、明らかにお前らは距離感がおかしいからだ。
OSSやってる連中は、限られたリソース(時間と金)の中でやりくりしている。
各自が今現在の状況で最大の効果が出るように考えている。
もちろん制約条件がそれぞれ異なるので、
君にとっての今の最適解が俺にとっての今の最適解でないこともよくある。逆も然り。
だけどそれはそういうものだから、いちいち文句は言わないし、言われない。
文句があるならお前がやれ、方針が違うならフォークしろ、の世界であるし。
だからお前らみたいな「俺の提案が神だからそれ以外は認めない」はないんだよ。
君は参加しているつもりになっているだけで、実際は観戦しているだけだよ。
参戦していない。
お前がそれならそれでいいよとしか言いようがない。
それがWeb系といわれる所以だろうし。
別に俺はお前に評価される必要なんてないし。
OSS云々ってのは、明らかにお前らは距離感がおかしいからだ。
OSSやってる連中は、限られたリソース(時間と金)の中でやりくりしている。
各自が今現在の状況で最大の効果が出るように考えている。
もちろん制約条件がそれぞれ異なるので、
君にとっての今の最適解が俺にとっての今の最適解でないこともよくある。逆も然り。
だけどそれはそういうものだから、いちいち文句は言わないし、言われない。
文句があるならお前がやれ、方針が違うならフォークしろ、の世界であるし。
だからお前らみたいな「俺の提案が神だからそれ以外は認めない」はないんだよ。
君は参加しているつもりになっているだけで、実際は観戦しているだけだよ。
参戦していない。
463デフォルトの名無しさん
2016/11/25(金) 01:22:21.94ID:9S7zID8/ ただまあそれ以前に俺はお前らの提案がいいとも思わないけどね。
いちいち反論した方がいいのか?ならば言ってみてもいいが、
余りこんなのをやってもお互いに意味はないんだよ。
どうにもお前らはこういうのが好きなようだが。
>>458
CacheStorageはhttps縛りだから使えない。
クローム拡張にしない理由は、FireFoxもサポート対象だから。
並行して2つのソースを管理するほどリソースはない。GreaseMonkeyなら一つのソースで済む。
ここら辺は要するに楽な方をとっているだけ。
クロスドメインについてはGreaseMonkeyは独自拡張を持っていてスルー出来る。
配布なら苦労してない。
GreaseMonkey導入後の環境ならuser.jsリンクをクリックすればインストールされる。
zipすら要らない。リンク一つで済む。
掛けた工数云々は関係ない。
未来の工数も踏まえた上で、今現在の最善手を選んでいるだけ。
これは俺以外のOSSに関わる連中全員そのはずだが。
上記の通り、今現在何も問題ないし、移行のメリットもないのにするわけないだろ。
IndexedDBと同様、chrome拡張にもどんな落とし穴があるかも分からないわけだし。
これで満足か?
何でお前らがこんな点ばかりににこだわるのか俺はよく分からないが。
いちいち反論した方がいいのか?ならば言ってみてもいいが、
余りこんなのをやってもお互いに意味はないんだよ。
どうにもお前らはこういうのが好きなようだが。
>>458
CacheStorageはhttps縛りだから使えない。
クローム拡張にしない理由は、FireFoxもサポート対象だから。
並行して2つのソースを管理するほどリソースはない。GreaseMonkeyなら一つのソースで済む。
ここら辺は要するに楽な方をとっているだけ。
クロスドメインについてはGreaseMonkeyは独自拡張を持っていてスルー出来る。
配布なら苦労してない。
GreaseMonkey導入後の環境ならuser.jsリンクをクリックすればインストールされる。
zipすら要らない。リンク一つで済む。
掛けた工数云々は関係ない。
未来の工数も踏まえた上で、今現在の最善手を選んでいるだけ。
これは俺以外のOSSに関わる連中全員そのはずだが。
上記の通り、今現在何も問題ないし、移行のメリットもないのにするわけないだろ。
IndexedDBと同様、chrome拡張にもどんな落とし穴があるかも分からないわけだし。
これで満足か?
何でお前らがこんな点ばかりににこだわるのか俺はよく分からないが。
464デフォルトの名無しさん
2016/11/25(金) 08:31:00.71ID:QZ3DaKSR >>462
評価される必要はないのに、相手を下げて自分を高めようとえらく必死だな。
限られたリソースは現実であって、目指すべきものはそのリソースに縛られたものにすべきじゃない。
俺には手一杯だからとか、この部分俺あんまり強くないから、とかは、放置するんじゃなくて、明言する。
どんどんマサカリ投げて、どんどんプルリク投げて欲しくて、画像貼らせてほしい。
誰かのリソースが足りないのなら、そう書いて、他の誰かのリソースの援助を求めるべきなんよ。
リソースが足りてないから制約条件になります、はおかしいし、ここまで物言いがついたら、最適条件がなぜ最適条件なのか、くらいからもう一回ゆっくり考えるべき。
ソクラテスのいじめまがいの問答をもってでもやるべき。
「俺の提案が神だからそれ以外は認めない」?
俺はそんな事は言ってないが。
むしろ、お前がずーっと言ってる事じゃねえの?
>>463
httpsなんかなんとでもなるだろ。letsencryptもあるし、イントラなら証明書配れば良い。
並行して管理するのは画面周りで良いので、実際の管理工数は1.3倍程度になる。きっちり画面とロジックの設計をしてれば。
なら、むしろグリモン縛りなら、グリモンでプロキシ書いたらいかんのか?
あと、データは普通に、indexedDB使わんと、ファイルに書けんじゃん。
そのアーカイブとやらをBase64にして、前後にvar tmp=""つけてjsとして書き出して、選んで@requireで読み込むだけで良いんだが、なんかindexedDBの出番ある?
それこそインデックスだと思うけどね。
評価される必要はないのに、相手を下げて自分を高めようとえらく必死だな。
限られたリソースは現実であって、目指すべきものはそのリソースに縛られたものにすべきじゃない。
俺には手一杯だからとか、この部分俺あんまり強くないから、とかは、放置するんじゃなくて、明言する。
どんどんマサカリ投げて、どんどんプルリク投げて欲しくて、画像貼らせてほしい。
誰かのリソースが足りないのなら、そう書いて、他の誰かのリソースの援助を求めるべきなんよ。
リソースが足りてないから制約条件になります、はおかしいし、ここまで物言いがついたら、最適条件がなぜ最適条件なのか、くらいからもう一回ゆっくり考えるべき。
ソクラテスのいじめまがいの問答をもってでもやるべき。
「俺の提案が神だからそれ以外は認めない」?
俺はそんな事は言ってないが。
むしろ、お前がずーっと言ってる事じゃねえの?
>>463
httpsなんかなんとでもなるだろ。letsencryptもあるし、イントラなら証明書配れば良い。
並行して管理するのは画面周りで良いので、実際の管理工数は1.3倍程度になる。きっちり画面とロジックの設計をしてれば。
なら、むしろグリモン縛りなら、グリモンでプロキシ書いたらいかんのか?
あと、データは普通に、indexedDB使わんと、ファイルに書けんじゃん。
そのアーカイブとやらをBase64にして、前後にvar tmp=""つけてjsとして書き出して、選んで@requireで読み込むだけで良いんだが、なんかindexedDBの出番ある?
それこそインデックスだと思うけどね。
465デフォルトの名無しさん
2016/11/25(金) 08:34:29.54ID:PtU3UTK5 いつも思うが、ここの質問者は複雑な背景がある質問をソースコードを出さずに質問するのは何故だ?
代替案が提案されるのは情報が出そろってないから
初めから全ての情報を出せばこんなことにはならない
アドバイスした人や否定意見を「お前等は分かってない」で一蹴してさんざん馬鹿にした上で去るのが常
お前が情報を出さないのが全ての原因
代替案が提案されるのは情報が出そろってないから
初めから全ての情報を出せばこんなことにはならない
アドバイスした人や否定意見を「お前等は分かってない」で一蹴してさんざん馬鹿にした上で去るのが常
お前が情報を出さないのが全ての原因
466デフォルトの名無しさん
2016/11/25(金) 08:47:16.69ID:QZ3DaKSR >>465
賢いつもりで、文句言ってくるやつは愚鈍だと言いたいんだろう。
そもそも相手を愚鈍にしておきたいから、ソース出さないんだと思うけどね。
俺なら早めに自分のリポジトリの上げて、声出して、便利そうだけどここで使い物にならんので、置いとく、とかやる。
個人の持ち物なら。
仕事や金儲けでやってたら、人の話聞かないと大怪我するのはわかってるしな。
賢いつもりで、文句言ってくるやつは愚鈍だと言いたいんだろう。
そもそも相手を愚鈍にしておきたいから、ソース出さないんだと思うけどね。
俺なら早めに自分のリポジトリの上げて、声出して、便利そうだけどここで使い物にならんので、置いとく、とかやる。
個人の持ち物なら。
仕事や金儲けでやってたら、人の話聞かないと大怪我するのはわかってるしな。
467デフォルトの名無しさん
2016/11/25(金) 09:05:01.87ID:cmXQyT89 いいんだよもう。
本当に心底困ってて、礼儀正しく質問してくる奴なんて幻なのだから。
俺すげーしたいやつ、ただここでアピールすることで興奮し、
不安を取り除いてやる気を出そうとするやつの話を聞いてやるのもこのスレの役目。
本当に心底困ってて、礼儀正しく質問してくる奴なんて幻なのだから。
俺すげーしたいやつ、ただここでアピールすることで興奮し、
不安を取り除いてやる気を出そうとするやつの話を聞いてやるのもこのスレの役目。
468デフォルトの名無しさん
2016/11/25(金) 12:43:41.42ID:QZ3DaKSR まぁ、拡張もクリック一つなんだけどね。
それが現状ベスト、ではなくて、それしか使えない、って白状すりゃいいのに、プライドの高いやつだなぁ。
それが現状ベスト、ではなくて、それしか使えない、って白状すりゃいいのに、プライドの高いやつだなぁ。
469デフォルトの名無しさん
2016/11/25(金) 13:19:56.25ID:1PQbLaAu 自分は万全に良く知ってて良く考えてると思ってるけど、
技術が圧倒的に足りないのもあってうまいこと行かず、
もやもやしたフラストレーションが溜まってるんでしょう。
要するに何か具体的に解決したいのではなくスッキリしたいだけ。
まあそれは結局自らの問題だから他人に言っても仕方ないんだけどね。
技術が圧倒的に足りないのもあってうまいこと行かず、
もやもやしたフラストレーションが溜まってるんでしょう。
要するに何か具体的に解決したいのではなくスッキリしたいだけ。
まあそれは結局自らの問題だから他人に言っても仕方ないんだけどね。
470デフォルトの名無しさん
2016/11/25(金) 22:05:14.23ID:9S7zID8/ お前らがそういうことにしたいのならそれでいいけども、
お前らのレベルの低さは他言語スレ見たらすぐ分かると思うんだが。
とはいえWeb系()に付ける薬はないのは分かった。
そしてこの言葉が広まっているのはつまり皆が同感するからであり、
それを俺が何とかしようとしても、所詮俺如きではどうにもならないのも分かった。
まあせいぜいポストゆとりに殺されてくれ。
お前らのレベルの低さは他言語スレ見たらすぐ分かると思うんだが。
とはいえWeb系()に付ける薬はないのは分かった。
そしてこの言葉が広まっているのはつまり皆が同感するからであり、
それを俺が何とかしようとしても、所詮俺如きではどうにもならないのも分かった。
まあせいぜいポストゆとりに殺されてくれ。
471デフォルトの名無しさん
2016/11/25(金) 22:06:17.97ID:9S7zID8/ >>465
ここでのこういうやりとりは無駄であって、
その時間をソースコード開発に回すべきだと思っているから。
ここに晒したらいちいち反応しなければならなくなるだろ。
それは時間の無駄だ。結局今回も自力で辿り着いてしまったし。
俺も結局は最善手を選んでいるだけ。
ここでコードを晒して時間を浪費するよりは、
何か情報があればラッキー程度として、基本的に自力で解決することに賭けた。
これまでのやりとりを見る限り、君達には俺のコードは読めないし、解決する能力もない。
だからせいぜいサンプルコード発掘くらいだと思ってそうした。
書き込み速度のオーダーを知っていればその点の即答もあるかと思ったが、それもないし。
おそらく君らは俺がやっているほど負荷掛けた使い方をしていない。だから何も知らない。
オススメのCacheStorageのスループットも知らないだろ?要するに君らはその程度なんだよ。
それで何でそこまで自信過剰なのか俺には分からないのだが。
(俺もそれを知らないから俺が大したこと無いのももちろん事実だが、
君らも大したことはないんだよ、それを自覚しないといけない)
そもそも代替案なんて必要なかった。
もう対策は出来ていて、十分な速度は出ている。(以前と比べて50倍速以上)
本来あるべき回答は「その書き込み速度は明らかに遅すぎるから、お前のコードに問題がある」だった。
ただ君らは本来の書き込み速度自体を知らないから、これに答えられず、
「遅いのなら違う方法を試せ」という間違った回答をよこし、それを正解にしようとしている。
色々明らかにずれているんだよ。
ここでのこういうやりとりは無駄であって、
その時間をソースコード開発に回すべきだと思っているから。
ここに晒したらいちいち反応しなければならなくなるだろ。
それは時間の無駄だ。結局今回も自力で辿り着いてしまったし。
俺も結局は最善手を選んでいるだけ。
ここでコードを晒して時間を浪費するよりは、
何か情報があればラッキー程度として、基本的に自力で解決することに賭けた。
これまでのやりとりを見る限り、君達には俺のコードは読めないし、解決する能力もない。
だからせいぜいサンプルコード発掘くらいだと思ってそうした。
書き込み速度のオーダーを知っていればその点の即答もあるかと思ったが、それもないし。
おそらく君らは俺がやっているほど負荷掛けた使い方をしていない。だから何も知らない。
オススメのCacheStorageのスループットも知らないだろ?要するに君らはその程度なんだよ。
それで何でそこまで自信過剰なのか俺には分からないのだが。
(俺もそれを知らないから俺が大したこと無いのももちろん事実だが、
君らも大したことはないんだよ、それを自覚しないといけない)
そもそも代替案なんて必要なかった。
もう対策は出来ていて、十分な速度は出ている。(以前と比べて50倍速以上)
本来あるべき回答は「その書き込み速度は明らかに遅すぎるから、お前のコードに問題がある」だった。
ただ君らは本来の書き込み速度自体を知らないから、これに答えられず、
「遅いのなら違う方法を試せ」という間違った回答をよこし、それを正解にしようとしている。
色々明らかにずれているんだよ。
472デフォルトの名無しさん
2016/11/25(金) 22:07:04.84ID:9S7zID8/ とはいえここら辺のずれもこれまでどおりだから、
俺は君らからでも有効回答が得られる可能性を残しつつ、
無駄に巻き込まれないように出す情報も絞ってある。
それだけ。
ただ、やっぱり難癖付けられて巻き込まれてはいるが。
前も言ったが、こっちもどこまで出せばどれくらいの精度が期待出来るかは分かるから、
こちらが出していない部分については当然回答がないということで全く問題ないんだよ。
出している範囲で明らかにおかしければ指摘して欲しいし、問題ないならスルーでいい。
ただ今回は出している範囲でも明らかにおかしいのに誰も指摘出来てないだろ。
そしてさらにおかしな回答をよこしてそれを正しいと主張している。
お前らがそれで仕事しているらしいからWeb系()って怖いわ。
なお君は465=444か?
だったら俺は君の回答には不満はない。知っている範囲で答えた良い回答だ。
知らない奴が間違った主張をするからおかしな事になるわけであってね。
ただなんか知らんがJavaScriptの連中はこういうのが多いが。
俺は君らからでも有効回答が得られる可能性を残しつつ、
無駄に巻き込まれないように出す情報も絞ってある。
それだけ。
ただ、やっぱり難癖付けられて巻き込まれてはいるが。
前も言ったが、こっちもどこまで出せばどれくらいの精度が期待出来るかは分かるから、
こちらが出していない部分については当然回答がないということで全く問題ないんだよ。
出している範囲で明らかにおかしければ指摘して欲しいし、問題ないならスルーでいい。
ただ今回は出している範囲でも明らかにおかしいのに誰も指摘出来てないだろ。
そしてさらにおかしな回答をよこしてそれを正しいと主張している。
お前らがそれで仕事しているらしいからWeb系()って怖いわ。
なお君は465=444か?
だったら俺は君の回答には不満はない。知っている範囲で答えた良い回答だ。
知らない奴が間違った主張をするからおかしな事になるわけであってね。
ただなんか知らんがJavaScriptの連中はこういうのが多いが。
473デフォルトの名無しさん
2016/11/25(金) 22:36:44.21ID:TwCdHdIi うーん、やっぱり、何かおかしいわ。
開発って長くやってりゃわかるけど、コード睨んでるより、飯食って風呂入って嫁とゴロゴロしてる時くらいに謎の天啓で解けるようなもんで、
ソースコード自体は「こう書く」と決めてから、ガーッと書いて半日位で終わるんだよなぁ。
ゴリラの知恵の輪見て、「お、解けてる、ゴールに辿り着いたな」と思うのは仏くらいだろ。
そのスループット、は背景がわからないと答えられないんよね。
グリモンでもバージョンによって違うし。
遅いなら違う方法試せ、は要は、「情報が足りなすぎてわからん。自分でやってみろよ」の糖衣文だろ。
やってるほど負荷をかけてない、って当たり前よ。
密航船の奴隷でもあるまいし。
普通は人数と航路に対して適切な船を選ぶか、船に対して適切な航路と人数を選ぶもんだ。
絞ったものには、絞ったなりの答えしか来ないよ。
WebはWeb屋、俺はイントラ屋と思ってるおっさんでも思うんだから、お前が馬鹿にしてる新進気鋭のWeb屋さんならもっとキツめに思うと思うよ。
少なくとも俺はそれはブラウザではやらん。
開発って長くやってりゃわかるけど、コード睨んでるより、飯食って風呂入って嫁とゴロゴロしてる時くらいに謎の天啓で解けるようなもんで、
ソースコード自体は「こう書く」と決めてから、ガーッと書いて半日位で終わるんだよなぁ。
ゴリラの知恵の輪見て、「お、解けてる、ゴールに辿り着いたな」と思うのは仏くらいだろ。
そのスループット、は背景がわからないと答えられないんよね。
グリモンでもバージョンによって違うし。
遅いなら違う方法試せ、は要は、「情報が足りなすぎてわからん。自分でやってみろよ」の糖衣文だろ。
やってるほど負荷をかけてない、って当たり前よ。
密航船の奴隷でもあるまいし。
普通は人数と航路に対して適切な船を選ぶか、船に対して適切な航路と人数を選ぶもんだ。
絞ったものには、絞ったなりの答えしか来ないよ。
WebはWeb屋、俺はイントラ屋と思ってるおっさんでも思うんだから、お前が馬鹿にしてる新進気鋭のWeb屋さんならもっとキツめに思うと思うよ。
少なくとも俺はそれはブラウザではやらん。
474デフォルトの名無しさん
2016/11/25(金) 23:59:05.15ID:9S7zID8/ お前も話をすり替えるのな。それもWeb系()の悪い癖だわ。
多分すぐに「ポストゆとりの新進気鋭のWeb屋」に駆逐されるよ。
俺の知ったことではないが。
多分すぐに「ポストゆとりの新進気鋭のWeb屋」に駆逐されるよ。
俺の知ったことではないが。
475デフォルトの名無しさん
2016/11/26(土) 00:52:43.95ID:9lTBiZ7O すり替えられた、何か攻撃されてる、それはWeb系()だからだ、と保身で揶揄してるままだと、それこそ新進気鋭に駆逐されるよ。
合理的だからね、彼らは。
最後から二つ目の段落に書いてあることも読めないくらいだから仕方ないけど。
合理的だからね、彼らは。
最後から二つ目の段落に書いてあることも読めないくらいだから仕方ないけど。
476デフォルトの名無しさん
2016/11/26(土) 01:30:19.73ID:S6y++TVv もしかして理解できない事はどれだけ喩えて言われてもすり替えられてると思ってるのかな
477デフォルトの名無しさん
2016/11/26(土) 02:26:09.31ID:bM77xh/N >>471
お前が自分の都合しか考えない自己中な奴だという事が分かっただけだな
お前が情報を開示しない事で、他人がお前の状況を正確に把握できず、お前の求める答えが無ければ情報を後出しして非難するわけだ
お前と同じ環境を揃えなければ再現する事は不可能だ
仮に俺の環境で検証したとしても後出しでいろいろと情報を付け足して否定するのは目に見えている
再現性が限りなく低いと分かっている問題に時間をかける奴はいない
「君達には俺のコードは読めないし、解決する能力もない」といってるが、実際にはお前の説明能力の問題
お前が自分の都合しか考えない自己中な奴だという事が分かっただけだな
お前が情報を開示しない事で、他人がお前の状況を正確に把握できず、お前の求める答えが無ければ情報を後出しして非難するわけだ
お前と同じ環境を揃えなければ再現する事は不可能だ
仮に俺の環境で検証したとしても後出しでいろいろと情報を付け足して否定するのは目に見えている
再現性が限りなく低いと分かっている問題に時間をかける奴はいない
「君達には俺のコードは読めないし、解決する能力もない」といってるが、実際にはお前の説明能力の問題
478デフォルトの名無しさん
2016/11/26(土) 05:01:06.08ID:RLAnsqoN そもそも解決して頂こう、その努力をしようと思っていないしな。
こいつは人様を一体何だと思ってるんだ?
技術者として以前に人間として下手くそな奴だな。
こいつは人様を一体何だと思ってるんだ?
技術者として以前に人間として下手くそな奴だな。
479デフォルトの名無しさん
2016/11/26(土) 11:38:59.71ID:EHtLgt8W 相変わらずゆとりの言い訳ばかり。本当にお前らどうしようもないな。
そうやって自己正当化ばかりしているからゆとりのままなんだよ。
まあそれをやり続けて数年後に死ねばいいと思うよ。
情報は後出ししてない。
最初の投稿>>441の時点で異常に遅いと分かるし、指摘出来る。
もちろん俺も異常に遅いと感じたから色々確かめていた。
とはいえコード自体は特に問題なさそうだったし、
そもそも俺はIndexedDBを初めて使うから速度のオーダーが分かってなかった。
だから聞いた。結果、誰も知らず、50倍遅いのを誰も見抜けなかっただけ。
結局お前らの実力ってその程度って事だよ。これは事実だよ。
他言語で50倍も遅いのに気づかないようだと殺される。
もちろん初心者ならいいけど、お前ら初心者じゃないつもりなんでしょ。
俺はそこら辺の勘違いを直せと言ってるんだよ。
とはいえ全く聞く耳持たないようだし、多分Web系()と言われる理由はそこなのだろう。
おそらく俺も他言語の技術者が既にやってきた指摘を繰り返しているだけ。
お前らがムキになって俺を悪者に仕立てるのもよく分からんが、そうしたければそうすればいい。
そんなことをしてもお前らの実力があることにはならない。
数年後にポストゆとりに殺されるか、
JavaScriptがもっとメジャーになって他言語の上級者が流入してきてお前らのゴミっぷりがばれて殺されるか。
あるいはWeb系()は今のままで低空飛行を続けられるか。
まあ俺の知ったことではないが。
そうやって自己正当化ばかりしているからゆとりのままなんだよ。
まあそれをやり続けて数年後に死ねばいいと思うよ。
情報は後出ししてない。
最初の投稿>>441の時点で異常に遅いと分かるし、指摘出来る。
もちろん俺も異常に遅いと感じたから色々確かめていた。
とはいえコード自体は特に問題なさそうだったし、
そもそも俺はIndexedDBを初めて使うから速度のオーダーが分かってなかった。
だから聞いた。結果、誰も知らず、50倍遅いのを誰も見抜けなかっただけ。
結局お前らの実力ってその程度って事だよ。これは事実だよ。
他言語で50倍も遅いのに気づかないようだと殺される。
もちろん初心者ならいいけど、お前ら初心者じゃないつもりなんでしょ。
俺はそこら辺の勘違いを直せと言ってるんだよ。
とはいえ全く聞く耳持たないようだし、多分Web系()と言われる理由はそこなのだろう。
おそらく俺も他言語の技術者が既にやってきた指摘を繰り返しているだけ。
お前らがムキになって俺を悪者に仕立てるのもよく分からんが、そうしたければそうすればいい。
そんなことをしてもお前らの実力があることにはならない。
数年後にポストゆとりに殺されるか、
JavaScriptがもっとメジャーになって他言語の上級者が流入してきてお前らのゴミっぷりがばれて殺されるか。
あるいはWeb系()は今のままで低空飛行を続けられるか。
まあ俺の知ったことではないが。
480デフォルトの名無しさん
2016/11/26(土) 19:29:29.83ID:RLAnsqoN 言ってることが無茶苦茶
ユーザースクリプトがワンクリックなんちゃらとか
拡張機能でもワンクリックで更新できますが?
そういった事が山ほどある
もう働きたくないでござる!働きたくないでござる!と言ってるようにしか見えない。
それとなんか、自分の正当性をペラペラ喋りまくることが正義だと思ってみたいだけど大間違い。
この世の正義とは、可愛げ・真摯さ・悪どさであって、
本当にひたむきに取り組むかは別にして、相手の意見を組んだことを示さなきゃ、
あれも嫌、これも嫌、じゃ最悪
お母ちゃんに駄々をこねる思春期少年のような態度を示されても困る
情報の後出し云々以前の問題
人間としてまともにコミュニケーション取れるようになってから来いよな
ほんと
ユーザースクリプトがワンクリックなんちゃらとか
拡張機能でもワンクリックで更新できますが?
そういった事が山ほどある
もう働きたくないでござる!働きたくないでござる!と言ってるようにしか見えない。
それとなんか、自分の正当性をペラペラ喋りまくることが正義だと思ってみたいだけど大間違い。
この世の正義とは、可愛げ・真摯さ・悪どさであって、
本当にひたむきに取り組むかは別にして、相手の意見を組んだことを示さなきゃ、
あれも嫌、これも嫌、じゃ最悪
お母ちゃんに駄々をこねる思春期少年のような態度を示されても困る
情報の後出し云々以前の問題
人間としてまともにコミュニケーション取れるようになってから来いよな
ほんと
481デフォルトの名無しさん
2016/11/26(土) 20:26:02.31ID:9lTBiZ7O 説明力0だしな。
でかいファイルの更新、は、遅いよ。
levelDBの実装見りゃわかる。
でかいファイルの更新、は、遅いよ。
levelDBの実装見りゃわかる。
482デフォルトの名無しさん
2016/11/26(土) 22:27:36.04ID:EHtLgt8W JavaScriptの環境にも色々問題があるのだけど、
お前らが上達してない最大の原因はお前らの人格だよ。
しかもそれを認めないと来てる。ゆとりは嫌われて当然だよ。
技術的なことは技術的に判断しないといけない。
>>473
一応言っておくけどお前もWeb系()以外の何者でもないよ。
50倍遅いコードを擁護するなんて他言語ではあり得ないから。
それを見抜けない奴を擁護することもね。
いや、正確に言えば、Web系ではサーバーサイドの連中も含まれてしまうので申し訳ない。
駄目なのは「ゆとりJavaScripter」と「その取り巻き」だね。
サーバーサイドでは処理性能が鯖コストに直結する為、50倍なんて当然認められない。
俺が遭遇したケースだと、Goの奴に「そんなところでString.replace使ってんじゃねーよ。
forで回して変換しろ」と言われたことがある。まあ正直、勘弁してくれよと思ったが。
フルスタック()とか言っているらしいけど、
俺が見る限りPHPの連中はお前らよりマシっぽいし、上記の通り環境もキツいので鍛えられる。
ポストゆとりを待つまでもなく、PHPerがフルスタック化すればお前らは殺されるよ。
まあPHPerには別の問題があるのかもしれないし、それも含めて俺の知ったことではないが。
お前らが上達してない最大の原因はお前らの人格だよ。
しかもそれを認めないと来てる。ゆとりは嫌われて当然だよ。
技術的なことは技術的に判断しないといけない。
>>473
一応言っておくけどお前もWeb系()以外の何者でもないよ。
50倍遅いコードを擁護するなんて他言語ではあり得ないから。
それを見抜けない奴を擁護することもね。
いや、正確に言えば、Web系ではサーバーサイドの連中も含まれてしまうので申し訳ない。
駄目なのは「ゆとりJavaScripter」と「その取り巻き」だね。
サーバーサイドでは処理性能が鯖コストに直結する為、50倍なんて当然認められない。
俺が遭遇したケースだと、Goの奴に「そんなところでString.replace使ってんじゃねーよ。
forで回して変換しろ」と言われたことがある。まあ正直、勘弁してくれよと思ったが。
フルスタック()とか言っているらしいけど、
俺が見る限りPHPの連中はお前らよりマシっぽいし、上記の通り環境もキツいので鍛えられる。
ポストゆとりを待つまでもなく、PHPerがフルスタック化すればお前らは殺されるよ。
まあPHPerには別の問題があるのかもしれないし、それも含めて俺の知ったことではないが。
483デフォルトの名無しさん
2016/11/26(土) 23:21:05.86ID:9lTBiZ7O >>482
なんだそりゃ。
鯖とかフルスタックの話するとなると、はっきり言って、
「使うべきでないものは最初から使わない」
に行き着くべきなんだが。
そんな事をするぐらいなら、札束でAWSのインスタンスをガンガン起こすSIerの発想の方がまだ正しいよ。
万能ナイフでビーフシチューは、作れないことも無いけど、作るべきじゃない。
その程度の次元の話。
あと、これはすり替えではなくて、無能に説明してる比喩表現だからね。
なんだそりゃ。
鯖とかフルスタックの話するとなると、はっきり言って、
「使うべきでないものは最初から使わない」
に行き着くべきなんだが。
そんな事をするぐらいなら、札束でAWSのインスタンスをガンガン起こすSIerの発想の方がまだ正しいよ。
万能ナイフでビーフシチューは、作れないことも無いけど、作るべきじゃない。
その程度の次元の話。
あと、これはすり替えではなくて、無能に説明してる比喩表現だからね。
484デフォルトの名無しさん
2016/11/26(土) 23:42:25.47ID:EHtLgt8W485デフォルトの名無しさん
2016/11/27(日) 01:20:07.95ID:bBkWJjxZ >>484
あのさぁ。抗う言葉が無くなってきたからといって、それはなかろう。
全然同意してないじゃん。
してるならそのソース捨てなよ…。
文脈を読ませるのはお前の仕事だ。
逆に、書いてあることを書いてある通りに読み、書いてない事を読まないのもお前の仕事だ。
IndexedDBなんか使うな、と言っとろうが。464でも。CacheStroageを使えとも言ってない。
適当にファイルに落とせば?って言ってんの。
それしたいなら、拡張で書くか、プロキシとして実装しろ、と。
何で相手がお前以下だと、お前の発想を単に否定しているだけだと思いこむの?
モヒカンなの?
あのさぁ。抗う言葉が無くなってきたからといって、それはなかろう。
全然同意してないじゃん。
してるならそのソース捨てなよ…。
文脈を読ませるのはお前の仕事だ。
逆に、書いてあることを書いてある通りに読み、書いてない事を読まないのもお前の仕事だ。
IndexedDBなんか使うな、と言っとろうが。464でも。CacheStroageを使えとも言ってない。
適当にファイルに落とせば?って言ってんの。
それしたいなら、拡張で書くか、プロキシとして実装しろ、と。
何で相手がお前以下だと、お前の発想を単に否定しているだけだと思いこむの?
モヒカンなの?
486デフォルトの名無しさん
2016/11/27(日) 01:52:00.72ID:sEFEgE7T487デフォルトの名無しさん
2016/11/27(日) 02:10:05.21ID:F1aOp1KR ID:EHtLgt8W
この人、「お前ら」と一括りにして反論する癖があるのね
選民意識の強い人と言うべきか
この人の場合は「自分」と「自分以外」で選民している感が強い
全能感も強くてコミュニケーション能力に問題がある感じ
この人、「お前ら」と一括りにして反論する癖があるのね
選民意識の強い人と言うべきか
この人の場合は「自分」と「自分以外」で選民している感が強い
全能感も強くてコミュニケーション能力に問題がある感じ
488デフォルトの名無しさん
2016/11/27(日) 02:17:18.52ID:bBkWJjxZ489デフォルトの名無しさん
2016/11/27(日) 02:53:05.25ID:fRnX9irD 誇大性(空想または行動における)、賛美されたい欲求、共感の欠如の広範な様式で、成人期早期までに始まり、種々の状況で明らかになる。以下のうち5つ(またはそれ以上)によって示される。
自分が重要であるという誇大な感覚(例:業績や才能を誇張する、十分な業績がないにもかかわらず優れていると認められることを期待する)
>>全レス
限りない成功、権力、才気、美しさ、あるいは理想的な愛の空想にとらわれている。
>>概ね全レス
自分が “特別” であり、独特であり、他の特別なまたは地位の高い人達(または団体)だけが理解しうる、または関係があるべきだ、と信じている。
>>459 OSS発言、
過剰な賛美を求める。
特権意識(つまり、特別有利な取り計らい、または自分が期待すれば相手が自動的に従うことを理由もなく期待する)
>>471-472
対人関係で相手を不当に利用する(すなわち、自分自身の目的を達成するために他人を利用する)。
>>471-472
共感の欠如:他人の気持ちおよび欲求を認識しようとしない、またはそれに気としない。
>>全レス
しばしば他人に嫉妬する、または他人が自分に嫉妬していると思い込む。
>>459 意識高いだけ云々
尊大で傲慢な行動、または態度
>>全レス
フルビットで通院案件
自分が重要であるという誇大な感覚(例:業績や才能を誇張する、十分な業績がないにもかかわらず優れていると認められることを期待する)
>>全レス
限りない成功、権力、才気、美しさ、あるいは理想的な愛の空想にとらわれている。
>>概ね全レス
自分が “特別” であり、独特であり、他の特別なまたは地位の高い人達(または団体)だけが理解しうる、または関係があるべきだ、と信じている。
>>459 OSS発言、
過剰な賛美を求める。
特権意識(つまり、特別有利な取り計らい、または自分が期待すれば相手が自動的に従うことを理由もなく期待する)
>>471-472
対人関係で相手を不当に利用する(すなわち、自分自身の目的を達成するために他人を利用する)。
>>471-472
共感の欠如:他人の気持ちおよび欲求を認識しようとしない、またはそれに気としない。
>>全レス
しばしば他人に嫉妬する、または他人が自分に嫉妬していると思い込む。
>>459 意識高いだけ云々
尊大で傲慢な行動、または態度
>>全レス
フルビットで通院案件
490デフォルトの名無しさん
2016/11/27(日) 05:35:11.63ID:mveO+vV3 人にケチ付ける前に自分のレスを見直した方がいい。
「IDBで一般的にこういうコードのケースで思ったようにパフォーマンスが出ないんだが」
この一言で済む話。
他は全て、私は怠惰です、短気です、プライドが高いです、とアピールしているようなもの。
もし一生懸命自分の中でやり尽くしたと思うのなら、
尚更一般的な話に落とし込んで問題提起しなくちゃ。
自尊心は、そういう前向きな回転を生み出すことで保つべきで、
自己肯定や他者否定に縋っちゃ駄目。
もっと頑張らなくちゃ。
「IDBで一般的にこういうコードのケースで思ったようにパフォーマンスが出ないんだが」
この一言で済む話。
他は全て、私は怠惰です、短気です、プライドが高いです、とアピールしているようなもの。
もし一生懸命自分の中でやり尽くしたと思うのなら、
尚更一般的な話に落とし込んで問題提起しなくちゃ。
自尊心は、そういう前向きな回転を生み出すことで保つべきで、
自己肯定や他者否定に縋っちゃ駄目。
もっと頑張らなくちゃ。
491デフォルトの名無しさん
2016/11/27(日) 10:33:33.02ID:sEFEgE7T >>488
いやただのストレージだよ。
FireFoxは「FileSystemAPIなんて要らない。だってIndexedDBで事足りる」という立場だ。
当たり前だがこれは「FileSystemAPIの代わりにIndexedDBを使うことに何の問題もない」という意味だよ。
少なくとも彼等はそう思っている。
(俺はOSから透過のFileSystemAPIがあった方がいいと思っている)
Blobの格納も出来るようになってるだろ。
もっとも、駄目ならBase64使う奴もいただろうし、それも選択肢だよ。
インデックスも貼れるけど、使わなくても何も問題ない。
とはいえこれらには合意する必要はない。
俺のプロジェクトは俺が方針を決めるし、君のプロジェクトでは君が方針を決めるだけのことだ。
次の質問に移ろう。
何故君はそんなに教科書的使い方にこだわるのか?
IndexedDBはインデックスを使ってアスキーを入れないといけない?何故?
俺は装備を見比べて使えそうな物を使っているだけ。具体的には
IndexedDB, CacheStorage, FileSystemAPIの中で一番マシなIndexedDBを使おうとしているだけ。
> なんでそれ直接読めるような鯖かかんの?って疑問。
サーバに関しては完全に俺の管轄外だ。
ガチの勝手スクリプトだから、こちらの要求は基本的に通らない。
いやただのストレージだよ。
FireFoxは「FileSystemAPIなんて要らない。だってIndexedDBで事足りる」という立場だ。
当たり前だがこれは「FileSystemAPIの代わりにIndexedDBを使うことに何の問題もない」という意味だよ。
少なくとも彼等はそう思っている。
(俺はOSから透過のFileSystemAPIがあった方がいいと思っている)
Blobの格納も出来るようになってるだろ。
もっとも、駄目ならBase64使う奴もいただろうし、それも選択肢だよ。
インデックスも貼れるけど、使わなくても何も問題ない。
とはいえこれらには合意する必要はない。
俺のプロジェクトは俺が方針を決めるし、君のプロジェクトでは君が方針を決めるだけのことだ。
次の質問に移ろう。
何故君はそんなに教科書的使い方にこだわるのか?
IndexedDBはインデックスを使ってアスキーを入れないといけない?何故?
俺は装備を見比べて使えそうな物を使っているだけ。具体的には
IndexedDB, CacheStorage, FileSystemAPIの中で一番マシなIndexedDBを使おうとしているだけ。
> なんでそれ直接読めるような鯖かかんの?って疑問。
サーバに関しては完全に俺の管轄外だ。
ガチの勝手スクリプトだから、こちらの要求は基本的に通らない。
492デフォルトの名無しさん
2016/11/27(日) 12:34:58.81ID:bBkWJjxZ >>491
彼らって誰?
Blobが格納できるようになったのは、中期以降。
しかも、そんな一つあたりが大きいデータの為じゃない。
これは、LevelDB見てくりゃわかること。
貼らなくても問題ないことはないよ。キーっていうインデックスは出てくるわけだし、sortedなので、そのキーに長くてソートが不要なものは使うべきじゃない。
俺のプロジェクトだから、俺が決める、なんて言っちゃうなら、OSS発言は取り消しといてね。
対極の発想だから。それ。
教科書的な使い方にこだわってるんじゃないよ。
実装見て、それは遣い方が悪いってものに対して、おかしいよって言ってる。
管轄外ってなんだそりゃ。フルスタックじゃねえの?(笑)
は、置いといて。
単純に、Clientで動かすプロキシ書けばいいんだよ。
特定のURLの場合、ネットワークで取得せずファイルから見るような。
彼らって誰?
Blobが格納できるようになったのは、中期以降。
しかも、そんな一つあたりが大きいデータの為じゃない。
これは、LevelDB見てくりゃわかること。
貼らなくても問題ないことはないよ。キーっていうインデックスは出てくるわけだし、sortedなので、そのキーに長くてソートが不要なものは使うべきじゃない。
俺のプロジェクトだから、俺が決める、なんて言っちゃうなら、OSS発言は取り消しといてね。
対極の発想だから。それ。
教科書的な使い方にこだわってるんじゃないよ。
実装見て、それは遣い方が悪いってものに対して、おかしいよって言ってる。
管轄外ってなんだそりゃ。フルスタックじゃねえの?(笑)
は、置いといて。
単純に、Clientで動かすプロキシ書けばいいんだよ。
特定のURLの場合、ネットワークで取得せずファイルから見るような。
493デフォルトの名無しさん
2016/11/27(日) 12:45:45.17ID:bBkWJjxZ もしかして、鯖って書いたらサーバー側で動かすもの想像してたのかな。
こいつのフルスタックって何なんだ。
こいつのフルスタックって何なんだ。
494デフォルトの名無しさん
2016/11/27(日) 12:54:03.05ID:x2gPA/Jh 無知と怠慢。救いようがない
495デフォルトの名無しさん
2016/11/27(日) 12:54:44.21ID:bBkWJjxZ なんでこんな事言ってるかと言うと、テレホの時代に、同じような物沢山観たんだよね。
metagetaしかり、Vectorにいっぱいあるレベル。
自分が一番イケてると思ってるんだろうが、単に轍に乗ってるだけ。
metagetaしかり、Vectorにいっぱいあるレベル。
自分が一番イケてると思ってるんだろうが、単に轍に乗ってるだけ。
496デフォルトの名無しさん
2016/11/27(日) 13:12:59.65ID:bBkWJjxZ ちなみに、IndexedDBで事足りる、とは言ってないんよね、Mozillaは。
ローカルファイルを使いたいなら今API策定してる、とも言ってるし。
割りと無難なブラウザオンリーな対応何は、ダウンロードしたそのアーカイブをドラッグアンドドロップやなんかでjsで受けてjsで開く事だと思うけど。すでにファイルとして出せるなら。
怠慢の方がマシ。
馬鹿な働き者は撃ち殺すしかないという典型例。
ローカルファイルを使いたいなら今API策定してる、とも言ってるし。
割りと無難なブラウザオンリーな対応何は、ダウンロードしたそのアーカイブをドラッグアンドドロップやなんかでjsで受けてjsで開く事だと思うけど。すでにファイルとして出せるなら。
怠慢の方がマシ。
馬鹿な働き者は撃ち殺すしかないという典型例。
497デフォルトの名無しさん
2016/11/27(日) 13:18:28.75ID:HGJqeK8l もういいからROMって?
498デフォルトの名無しさん
2016/11/27(日) 13:31:22.83ID:sEFEgE7T >>496
お前はやはり日本語にどうにも問題がある。議論は無理だ。
とはいえお前にも分かる範囲の所は答えておく。
> 割りと無難なブラウザオンリーな対応何は、ダウンロードしたそのアーカイブをドラッグアンドドロップやなんかでjsで受けてjsで開く事だと思うけど。すでにファイルとして出せるなら。
その通りだ。そしてこれはもう実装出来ている。
そして別オプションとしてIndexedDBにも格納出来るようにしようとしている。
> 俺のプロジェクトだから、俺が決める、なんて言っちゃうなら、OSS発言は取り消しといてね。
> 対極の発想だから。それ。
違うんだな。お前はOSSに「参戦」していないからそれが分からない。
>>464なんて典型的な勘違いだぞ。
ただまあとにかく「参戦」してみろ。それだけでいろいろ分かるはずだから。
お前はやはり日本語にどうにも問題がある。議論は無理だ。
とはいえお前にも分かる範囲の所は答えておく。
> 割りと無難なブラウザオンリーな対応何は、ダウンロードしたそのアーカイブをドラッグアンドドロップやなんかでjsで受けてjsで開く事だと思うけど。すでにファイルとして出せるなら。
その通りだ。そしてこれはもう実装出来ている。
そして別オプションとしてIndexedDBにも格納出来るようにしようとしている。
> 俺のプロジェクトだから、俺が決める、なんて言っちゃうなら、OSS発言は取り消しといてね。
> 対極の発想だから。それ。
違うんだな。お前はOSSに「参戦」していないからそれが分からない。
>>464なんて典型的な勘違いだぞ。
ただまあとにかく「参戦」してみろ。それだけでいろいろ分かるはずだから。
499デフォルトの名無しさん
2016/11/27(日) 13:35:35.02ID:bBkWJjxZ500デフォルトの名無しさん
2016/11/28(月) 05:41:09.72ID:sKwraRFT 一つ言えることは、この件についてやってみる価値がありそうなこと沢山あるのに、
めんどくさがって手を動かさないで口だけで反論するのでは前に進みようがないということだね
めんどくさがって手を動かさないで口だけで反論するのでは前に進みようがないということだね
501デフォルトの名無しさん
2016/11/29(火) 03:20:41.76ID:MuupHWfc 別オプションとしてindexedDBに…保存する意味がわからん
502デフォルトの名無しさん
2016/11/29(火) 23:05:21.60ID:BntnGE9d 「FileSystemAPI が不要」なのは、ファイルの書き込み機能は
blob URL リンクにしてダウンロードで事足りるから、ではないのかな?
blob URL リンクにしてダウンロードで事足りるから、ではないのかな?
503デフォルトの名無しさん
2016/11/30(水) 10:48:28.24ID:Sk/SQjO5 超初心者です。
PHPとJavaScriptでホームページ作っていますがJavaScriptの変数名の使い方で質問です
phpの場合
変数名 hoge1fuga hoge2fuga ……を使用する時変数iを使って
→ if(hoge'.$i.'fuga == 'abcd')
→ $h = 'hoge'
$f = 'fuga'
if($h$i$f == 'abcd')
のような書き方ができますがjavascriptの場合どう書けば良いのでしょうか。
var hoge = fuga1.checked
の時に var hoge = fuga + i + .checked の記述にするとエラーになってしいまい、変数名の使い方そのものに疑問が湧きました。
PHPとJavaScriptでホームページ作っていますがJavaScriptの変数名の使い方で質問です
phpの場合
変数名 hoge1fuga hoge2fuga ……を使用する時変数iを使って
→ if(hoge'.$i.'fuga == 'abcd')
→ $h = 'hoge'
$f = 'fuga'
if($h$i$f == 'abcd')
のような書き方ができますがjavascriptの場合どう書けば良いのでしょうか。
var hoge = fuga1.checked
の時に var hoge = fuga + i + .checked の記述にするとエラーになってしいまい、変数名の使い方そのものに疑問が湧きました。
504デフォルトの名無しさん
2016/11/30(水) 10:49:26.04ID:Sk/SQjO5505デフォルトの名無しさん
2016/11/30(水) 16:00:04.29ID:1swyBgvf >>503
できないことはないが、行儀が極めて悪いことだとされるのでしない。
そういうときは、配列を使う。 つまり、
var fuga1, fuga2 ではなく、
var fuga = [] とする。 利用するときは、
var hoge = fuga[i].checked となる。
できないことはないが、行儀が極めて悪いことだとされるのでしない。
そういうときは、配列を使う。 つまり、
var fuga1, fuga2 ではなく、
var fuga = [] とする。 利用するときは、
var hoge = fuga[i].checked となる。
506デフォルトの名無しさん
2016/12/31(土) 15:44:33.33ID:nUjD4DbZ JavaScript死亡www
「WebAssembly」がITの未来に変革もたらす|Google、Apple、Microsoft、Mozillaが共同で開発した新概念
「WebAssembly」がWebブラウザに変革をもたらします。
Webブラウザは、もともとただテキストを表示するだけのところから始まりました。その出発点から、現在ではコミュニケーションやゲームまで幅広い表現を可能にしています。
そして今回、「Webブラウザ」に新しい概念が加わわることになりました。
それをもたらしたのが、ブラウザに関わりの深い世界規模の4社「Google」「Apple」「Microsoft」「Mozilla」が共同開発した、Webのためのバイナリーフォーマット「WebAssembly」です。
今回はその「WebAssembly」について、「スゴイところって何?」「何が起きるの?」をご紹介していきます。
WebAssemblyは「JS不要。コンパイラ言語だけで動的アプリが作れる」「どの言語でもWebブラウザ上にアプリを作ることができる」
WebAssemblyによってもたらされるスゴイところは次の4つ。
コンパイラ言語だけで、Webブラウザ上に動的なアプリが作れる
ほぼ機械言語にコンパイルされるからヌルヌル動く
OSを一切気にする必要がなくなる。気にするのはブラウザのみ
C,C 以外の言語でもWebAssemblyにコンパイルされる「クロスコンパイラ」の可能性が高まった
これまでWebブラウザで、ユーザからの入力情報を元に、動的なアプリケーションを実現するためには「JavaScript」が必須でした。
「インタプリター言語」であるJavaScriptは、その都度ソースコードを機械語に翻訳する必要があるため、予め機械語に近くコンパイルされる「コンパイラ言語」と比較すると動作が遅いという特徴があります(※)。
もしコンパイル後の機械語に近い形で、Webブラウザ上でコードが実行されたら。
JavaScript以上にヌルヌルに動き、しかもJavaScriptを気にする必要がなくなります。
それを実現したのがこの「WebAssembly」です。
https://mayonez.jp/1690
「WebAssembly」がITの未来に変革もたらす|Google、Apple、Microsoft、Mozillaが共同で開発した新概念
「WebAssembly」がWebブラウザに変革をもたらします。
Webブラウザは、もともとただテキストを表示するだけのところから始まりました。その出発点から、現在ではコミュニケーションやゲームまで幅広い表現を可能にしています。
そして今回、「Webブラウザ」に新しい概念が加わわることになりました。
それをもたらしたのが、ブラウザに関わりの深い世界規模の4社「Google」「Apple」「Microsoft」「Mozilla」が共同開発した、Webのためのバイナリーフォーマット「WebAssembly」です。
今回はその「WebAssembly」について、「スゴイところって何?」「何が起きるの?」をご紹介していきます。
WebAssemblyは「JS不要。コンパイラ言語だけで動的アプリが作れる」「どの言語でもWebブラウザ上にアプリを作ることができる」
WebAssemblyによってもたらされるスゴイところは次の4つ。
コンパイラ言語だけで、Webブラウザ上に動的なアプリが作れる
ほぼ機械言語にコンパイルされるからヌルヌル動く
OSを一切気にする必要がなくなる。気にするのはブラウザのみ
C,C 以外の言語でもWebAssemblyにコンパイルされる「クロスコンパイラ」の可能性が高まった
これまでWebブラウザで、ユーザからの入力情報を元に、動的なアプリケーションを実現するためには「JavaScript」が必須でした。
「インタプリター言語」であるJavaScriptは、その都度ソースコードを機械語に翻訳する必要があるため、予め機械語に近くコンパイルされる「コンパイラ言語」と比較すると動作が遅いという特徴があります(※)。
もしコンパイル後の機械語に近い形で、Webブラウザ上でコードが実行されたら。
JavaScript以上にヌルヌルに動き、しかもJavaScriptを気にする必要がなくなります。
それを実現したのがこの「WebAssembly」です。
https://mayonez.jp/1690
507デフォルトの名無しさん
2017/01/01(日) 00:42:27.84ID:k8/wNRO9 あちこちに落としているようだが、誰一人として肯定して無くてワロタw
つかマジでJavaScript界隈の馬鹿共はこんなデタラメ記事書くのをいい加減止めた方がいいと思うのだが。
自浄作用が無いのは、お前らが叩かないからでもあるんだぜ。
嘘は叩かれるべき。
Cに関しては昔は間違い叩きがすごかったと聞くが、
結果的にWeb上での間違いは皆無となり、お互いの利益になってる。
JavaScriptに間違い記事が氾濫しているのは、第一義には書く奴が悪いんだが、放置されていることも問題だよ。
とはいえ、この記事には投稿欄が無いため、#mayonez編集部=馬鹿と覚えておくしかないが。
この点はQiitaのほうがかなりマシだな。
つかマジでJavaScript界隈の馬鹿共はこんなデタラメ記事書くのをいい加減止めた方がいいと思うのだが。
自浄作用が無いのは、お前らが叩かないからでもあるんだぜ。
嘘は叩かれるべき。
Cに関しては昔は間違い叩きがすごかったと聞くが、
結果的にWeb上での間違いは皆無となり、お互いの利益になってる。
JavaScriptに間違い記事が氾濫しているのは、第一義には書く奴が悪いんだが、放置されていることも問題だよ。
とはいえ、この記事には投稿欄が無いため、#mayonez編集部=馬鹿と覚えておくしかないが。
この点はQiitaのほうがかなりマシだな。
508デフォルトの名無しさん
2017/01/01(日) 08:00:47.18ID:FrNRDqOE >>507
素晴らしい指摘をしているであろうあなたの投稿を見たいからQiitaで使っているアカウントを教えてくれ
素晴らしい指摘をしているであろうあなたの投稿を見たいからQiitaで使っているアカウントを教えてくれ
509デフォルトの名無しさん
2017/01/01(日) 08:49:58.30ID:k8/wNRO9510デフォルトの名無しさん
2017/01/01(日) 08:55:22.46ID:2Xf0vibn ID:k8/wNRO9 のような他人のダメ出ししか出来ない奴がまともな指摘をするとは思えないのでどうでもいい
511デフォルトの名無しさん
2017/01/01(日) 08:59:00.51ID:k8/wNRO9512デフォルトの名無しさん
2017/01/01(日) 13:57:14.12ID:fINgyq7S 何かと理由を付けてQiitaアカウントを隠すとは思っていたが、意外とあっさり自分の非を認めるんだな
513デフォルトの名無しさん
2017/01/01(日) 16:36:12.10ID:30cN+tVf HTML+JavaScript+WebAPIの構成で認証処理したい場合ってこれでいいの?
ログイン画面
-- ユーザー名/パスワードを送信
-- パスワードが合ってればデータベースにユーザー名と認証トークンを保存
-- レスポンスヘッダーに認証トークンを書き込み
他の画面
-- リクエストヘッダーに認証トークンを書き込み
-- データベースの認証トークンを照会して合ってれば更新
-- レスポンスヘッダーに新しい認証トークンを書き込み
WebAPI
-- ajaxヘッダーに認証トークンを書き込み
-- データベースの認証トークンを照会して合ってたらapiを実行
ログイン画面
-- ユーザー名/パスワードを送信
-- パスワードが合ってればデータベースにユーザー名と認証トークンを保存
-- レスポンスヘッダーに認証トークンを書き込み
他の画面
-- リクエストヘッダーに認証トークンを書き込み
-- データベースの認証トークンを照会して合ってれば更新
-- レスポンスヘッダーに新しい認証トークンを書き込み
WebAPI
-- ajaxヘッダーに認証トークンを書き込み
-- データベースの認証トークンを照会して合ってたらapiを実行
514デフォルトの名無しさん
2017/01/01(日) 17:38:52.36ID:QliWG2cV >>513
トークンって何?
JWTみたいな署名したものの類?
であれば、ログイン画面以外はサーバ側の何も更新する必要無いのでは?
新しいものを発行しまくる必要が無いと言うか、どこでもそんな事すべきでは無い。
ログイン画面に当たるものと、トークン更新のAPIがあればそれで良い。
セッションキーならまた話は別だけど。
トークンの定義が適当すぎて答えられん。
トークンって何?
JWTみたいな署名したものの類?
であれば、ログイン画面以外はサーバ側の何も更新する必要無いのでは?
新しいものを発行しまくる必要が無いと言うか、どこでもそんな事すべきでは無い。
ログイン画面に当たるものと、トークン更新のAPIがあればそれで良い。
セッションキーならまた話は別だけど。
トークンの定義が適当すぎて答えられん。
515デフォルトの名無しさん
2017/01/01(日) 17:39:50.17ID:k8/wNRO9 >>512
違うぞ。
> 何かと理由を付けてQiitaアカウントを隠す
隠してねえ。そもそも持ってねえ。
> 意外とあっさり自分の非を認めるんだな
そもそも俺に非はない。
506がデタラメだと分からない馬鹿はこのスレにはお呼びじゃない。
理由が分からないのなら、必死チェッカーで調べてみろ。
JavaScript/Java/C#(Xamarin)のいずれのスレでもそれぞれ別の理由で駄目出しされてる。
もちろんそれ以外にも駄目出し出来る。
508はコミュ症過ぎて受けようがない。それを咎めている。
もっともお前もコミュ症過ぎて分からないようだが。
508は反射レスだ。俺のレスが気に入らないから定型的に返してみただけ。
だけどそういうのがお前らの状況をより悪くしている。そのことにいい加減気づけ。
違うぞ。
> 何かと理由を付けてQiitaアカウントを隠す
隠してねえ。そもそも持ってねえ。
> 意外とあっさり自分の非を認めるんだな
そもそも俺に非はない。
506がデタラメだと分からない馬鹿はこのスレにはお呼びじゃない。
理由が分からないのなら、必死チェッカーで調べてみろ。
JavaScript/Java/C#(Xamarin)のいずれのスレでもそれぞれ別の理由で駄目出しされてる。
もちろんそれ以外にも駄目出し出来る。
508はコミュ症過ぎて受けようがない。それを咎めている。
もっともお前もコミュ症過ぎて分からないようだが。
508は反射レスだ。俺のレスが気に入らないから定型的に返してみただけ。
だけどそういうのがお前らの状況をより悪くしている。そのことにいい加減気づけ。
516デフォルトの名無しさん
2017/01/01(日) 17:40:34.08ID:k8/wNRO9 506は明確に間違いを含んでいる。それが分からないような馬鹿とは俺は話したいとは思わない。
そして真面目に話したいのなら、いちいち無駄に煽る意味は無い。
あれでは他の誰かがQiitaアカウント持ってても、508みたいなゴミに教えようとは思わないだろ。
つまり、508は俺を叩くためだけの作用しかない。プラス作用は期待できないレスだ。
では俺が叩かれる理由があるか?それはお前らが考えるべきことだが、
俺は意図的に、
#mayonez編集部=馬鹿、つまり、
#mayonezはゴミサイトだ
と言っている。これは再度強調しておく。
俺はゴミ潰しをしているんだよ。俺が507で言ったとおりにね。
506の意図は不明だが、通常はこれだけ投下するのなら関係者が宣伝しているとかだ。
あんなデタラメを宣伝されても迷惑でしかないだろ。
だから俺は奴らが書き込む度に叩くことにより、書き込みを防ぐことを期待している。
分かるか?
書き込みを強制的に止めさせることはできない。
でも、「宣伝したい」のなら、カウンター「だって#mayonezって嘘ばかりのゴミじゃん」を合わせることによって、
相手に書き込みを止めさせることを期待している。
これを理解したうえで批判するのはお前の自由。
理解できずに反射レスしているような奴は馬鹿で、かつ加害者でもあることを自覚しろ。
お前らみたいな奴がいるから平気で506みたいな奴が沸くんだよ。
俺みたいな奴しかいなければ奴らはすぐ死滅する。他言語スレがそうだ。
JavaScriptのスレが糞なのは、お前らみたいなゆとりが馬鹿丸出しで口出ししてるからだよ。
スレの流れが読めないのなら自重しろ。
そして真面目に話したいのなら、いちいち無駄に煽る意味は無い。
あれでは他の誰かがQiitaアカウント持ってても、508みたいなゴミに教えようとは思わないだろ。
つまり、508は俺を叩くためだけの作用しかない。プラス作用は期待できないレスだ。
では俺が叩かれる理由があるか?それはお前らが考えるべきことだが、
俺は意図的に、
#mayonez編集部=馬鹿、つまり、
#mayonezはゴミサイトだ
と言っている。これは再度強調しておく。
俺はゴミ潰しをしているんだよ。俺が507で言ったとおりにね。
506の意図は不明だが、通常はこれだけ投下するのなら関係者が宣伝しているとかだ。
あんなデタラメを宣伝されても迷惑でしかないだろ。
だから俺は奴らが書き込む度に叩くことにより、書き込みを防ぐことを期待している。
分かるか?
書き込みを強制的に止めさせることはできない。
でも、「宣伝したい」のなら、カウンター「だって#mayonezって嘘ばかりのゴミじゃん」を合わせることによって、
相手に書き込みを止めさせることを期待している。
これを理解したうえで批判するのはお前の自由。
理解できずに反射レスしているような奴は馬鹿で、かつ加害者でもあることを自覚しろ。
お前らみたいな奴がいるから平気で506みたいな奴が沸くんだよ。
俺みたいな奴しかいなければ奴らはすぐ死滅する。他言語スレがそうだ。
JavaScriptのスレが糞なのは、お前らみたいなゆとりが馬鹿丸出しで口出ししてるからだよ。
スレの流れが読めないのなら自重しろ。
517デフォルトの名無しさん
2017/01/01(日) 18:08:54.61ID:QliWG2cV クソ長い説明はだいたいが間違ってる。
どっかのトランスパイル馬鹿と同じ。
どっかのトランスパイル馬鹿と同じ。
518デフォルトの名無しさん
2017/01/01(日) 18:42:12.80ID:8rzMeR7x ID:k8/wNRO9 は自分の書き込みが参考にならない事を正しいと認めたのだからスルーしてあげるのが優しさだよ
519デフォルトの名無しさん
2017/01/01(日) 18:49:08.37ID:QliWG2cV なるほど、役には立たんことを逆説的に役に立つと言ってるから、
これが訳に立てば役に立たなくて、役に立てば役に立っていないのか。
難しい書き込みするなぁ。
これが訳に立てば役に立たなくて、役に立てば役に立っていないのか。
難しい書き込みするなぁ。
520デフォルトの名無しさん
2017/01/01(日) 18:50:49.14ID:QliWG2cV521デフォルトの名無しさん
2017/01/01(日) 19:00:23.75ID:UZp8Mxmv >>510を認めておいて何を小難しい解釈してるんだ?
読解力が足りない文盲はこれだから…
読解力が足りない文盲はこれだから…
522デフォルトの名無しさん
2017/01/02(月) 00:16:58.11ID:OVlW98VI >>521
いや、お前が馬鹿すぎるから、矛盾する2つ以上の状況が出てくるだけ。
それに気づいていない時点でちょっと引くレベルでバカじゃん。
さらに指摘されても気づいてないとか。
頭の中のおがくず一回入れ替えてきたら?クワガタの幼虫程度の知能にはなれるんじゃない?
いや、お前が馬鹿すぎるから、矛盾する2つ以上の状況が出てくるだけ。
それに気づいていない時点でちょっと引くレベルでバカじゃん。
さらに指摘されても気づいてないとか。
頭の中のおがくず一回入れ替えてきたら?クワガタの幼虫程度の知能にはなれるんじゃない?
523デフォルトの名無しさん
2017/01/03(火) 08:27:03.92ID:m68UQ04g524デフォルトの名無しさん
2017/01/19(木) 22:43:27.75ID:OV8X1StJ クエリパラメータでURLを受けとってクエリパラメータを追加してそこの遷移するって危険?
画面Aで検索ボタン押す→画面Aのアドレスをクエリパラメータに追加して画面Bに遷移する
画面Bで検索を行い1つ選択して戻るボタンを押す→検索結果をパラメータにして画面Aに遷移する
こういう感じの入力支援機能を作りたいんだけど
画面Aで検索ボタン押す→画面Aのアドレスをクエリパラメータに追加して画面Bに遷移する
画面Bで検索を行い1つ選択して戻るボタンを押す→検索結果をパラメータにして画面Aに遷移する
こういう感じの入力支援機能を作りたいんだけど
525デフォルトの名無しさん
2017/01/20(金) 00:35:32.81ID:H+FrkUCG 一つのページで上手く完結させたほうがきっと良い
526デフォルトの名無しさん
2017/01/20(金) 01:04:21.61ID:vNxVJ868 俺もそう思う。
527デフォルトの名無しさん
2017/01/29(日) 15:36:11.92ID:CHlx9RpS JavaScript ベスト・オブ・ザ・イヤー 2016
https://risingstars2016.js.org/ja/
JavaScriptコミュニティは日々進化しています。今日のトレンドも数か月後には陳腐化しているなんてことは日常茶飯事です。
2016年は終わってしまいましたが、何か重要なことを見逃したのではないかと感じているそこのあなた! 2016年の主要なトレンドをおさらいして、そんな不安を払拭しちゃいましょう。
過去12か月に獲得された Github のスター数を比較して、2016年に支持を集めたプロジェクトを数値に基づいて評価していきます。
2015年はなんといっても React でした。そして、Flux 実装を席巻したのは Redux でしたね。 2016年、JavaScript の人気プロジェクトはどのようなものだったのでしょうか?
https://risingstars2016.js.org/ja/
JavaScriptコミュニティは日々進化しています。今日のトレンドも数か月後には陳腐化しているなんてことは日常茶飯事です。
2016年は終わってしまいましたが、何か重要なことを見逃したのではないかと感じているそこのあなた! 2016年の主要なトレンドをおさらいして、そんな不安を払拭しちゃいましょう。
過去12か月に獲得された Github のスター数を比較して、2016年に支持を集めたプロジェクトを数値に基づいて評価していきます。
2015年はなんといっても React でした。そして、Flux 実装を席巻したのは Redux でしたね。 2016年、JavaScript の人気プロジェクトはどのようなものだったのでしょうか?
528デフォルトの名無しさん
2017/01/29(日) 18:44:38.75ID:M0HgmB1M スタートアップで作ってるメンバーは気楽でいいよね
10年後か20年後かに腐りきったフレームワークに依存した数多のシステムを保守する人が憐れ
10年後か20年後かに腐りきったフレームワークに依存した数多のシステムを保守する人が憐れ
529デフォルトの名無しさん
2017/03/25(土) 00:53:22.16ID:is8OgtpR switch caseは嫌いだから
javascriptの時は配列で代用してるわ
switch (weather){
case "快晴":
return "f.png";
case "晴れ":
return "f.png";
case "くもり":
return "c.png";
case "雨":
return "r.png";
これより
Select =[
"快晴" : f.png,
"晴れ" : f.png,
"くもり" : c.png,
"雨" : r.png
]
Select(weather);
の方が見やすいやん
javascriptの時は配列で代用してるわ
switch (weather){
case "快晴":
return "f.png";
case "晴れ":
return "f.png";
case "くもり":
return "c.png";
case "雨":
return "r.png";
これより
Select =[
"快晴" : f.png,
"晴れ" : f.png,
"くもり" : c.png,
"雨" : r.png
]
Select(weather);
の方が見やすいやん
530デフォルトの名無しさん
2017/03/25(土) 00:54:36.43ID:is8OgtpR switchなんて所詮はif文の連続の糖衣構文だからな
javascript連想配列でデフオルト値設定する時は
if(hoge[x]===undefined)一文を付け加えるだでオケ
あと、普通はswitch case文でやりそうな
hoge = [
"快晴" : function(){ 処理1 },
"晴れ" : function(){ 処理2 },
"くもり" : function(){ 処理3 },
"雨" : function(){ 処理4 }
]
hoge[weather]();
みたいのもよくやるわ
それくらいswitch case使いたくない
javascript連想配列でデフオルト値設定する時は
if(hoge[x]===undefined)一文を付け加えるだでオケ
あと、普通はswitch case文でやりそうな
hoge = [
"快晴" : function(){ 処理1 },
"晴れ" : function(){ 処理2 },
"くもり" : function(){ 処理3 },
"雨" : function(){ 処理4 }
]
hoge[weather]();
みたいのもよくやるわ
それくらいswitch case使いたくない
531デフォルトの名無しさん
2017/03/25(土) 01:04:50.07ID:U4euK7G2532デフォルトの名無しさん
2017/10/29(日) 07:37:41.42ID:Heo7FnD+533デフォルトの名無しさん
2017/10/29(日) 11:02:46.12ID:Heo7FnD+ 質問なのですが、HTML5のcanvas要素が1ページ内に1000個あり、
それらに対してgetImageData()とputImageData()を周期的に行わねばならないとして、
(1) 「canvas iを処理するタイマイベントi」を1000個起こす
(2) タイマイベント1個の中でcanvas 1〜1000を処理する
という2種類の実装方法の間でブラウザのレンダリング回数に違いは生じますか?
やっぱ(2)の方がパホーマンス上目に見えて有利?
それらに対してgetImageData()とputImageData()を周期的に行わねばならないとして、
(1) 「canvas iを処理するタイマイベントi」を1000個起こす
(2) タイマイベント1個の中でcanvas 1〜1000を処理する
という2種類の実装方法の間でブラウザのレンダリング回数に違いは生じますか?
やっぱ(2)の方がパホーマンス上目に見えて有利?
534デフォルトの名無しさん
2017/10/29(日) 12:15:24.08ID:EyB63P4N535デフォルトの名無しさん
2017/10/29(日) 12:35:01.00ID:WeryM17b requestIdleCallback内で可能な個数だけを処理するのがいいと思うよ
536デフォルトの名無しさん
2017/10/29(日) 12:48:10.75ID:tz+cuQEW タイマイベント自体はどの程度の周期で発生するんだろ
短ければ短い程良いって感じなのかな
短ければ短い程良いって感じなのかな
537デフォルトの名無しさん
2017/10/29(日) 18:50:15.75ID:Heo7FnD+ 1000個、というのが疑念(更新が間に合わない場合を含んでいるのでは等)を呼んでしまったようなので
質問を修正させていただきまする
Q1. canvas要素の書き換えは即座にブラウザの再レンダリングを招く?
それともハンドラが終了してからまとめて再レンダリングされるもの?
あるいはその他?(何か別のトリガーがある?)
Q2. ブラウザの再レンダリングがいつ起きたか直接的に確認する手段があればキボン
なおハンドラ内で行うのはcanvas内容の参照と書き換えのみとします。
(明白に再レンダリングを招くoffsetTop/Left/Width/Height等、要素の配置座標に関わる参照や書き換えは含まない。)
質問を修正させていただきまする
Q1. canvas要素の書き換えは即座にブラウザの再レンダリングを招く?
それともハンドラが終了してからまとめて再レンダリングされるもの?
あるいはその他?(何か別のトリガーがある?)
Q2. ブラウザの再レンダリングがいつ起きたか直接的に確認する手段があればキボン
なおハンドラ内で行うのはcanvas内容の参照と書き換えのみとします。
(明白に再レンダリングを招くoffsetTop/Left/Width/Height等、要素の配置座標に関わる参照や書き換えは含まない。)
538デフォルトの名無しさん
2017/10/29(日) 19:36:44.29ID:Oszg+7NJ デバッガを使えば確認できる。基本的にディスプレイのリフレッシュ毎に一回。
539デフォルトの名無しさん
2017/10/29(日) 21:04:51.00ID:EMf9PiJ4 (2)の方法なら終了するまでレンダリングが起きようがない
540デフォルトの名無しさん
2018/02/16(金) 06:16:17.56ID:W1XJdyx1 ☆ 日本の、改憲を行いましょう。現在、衆議員と参議院の
両院で、改憲議員が3分の2を超えております。
『憲法改正国民投票法』、でググってみてください。国会の発議は
すでに可能です。平和は勝ち取るものです。お願い致します。☆☆
両院で、改憲議員が3分の2を超えております。
『憲法改正国民投票法』、でググってみてください。国会の発議は
すでに可能です。平和は勝ち取るものです。お願い致します。☆☆
541デフォルトの名無しさん
2018/05/23(水) 21:23:56.11ID:Au5e7VGg 僕の知り合いの知り合いができたパソコン一台でお金持ちになれるやり方
役に立つかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』
5PLLK
役に立つかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』
5PLLK
542デフォルトの名無しさん
2018/07/05(木) 00:34:01.49ID:RfoszcD2 4HA
543デフォルトの名無しさん
2019/03/09(土) 13:19:47.50ID:jxJql+xc 受託の人たちでPWA対応って結構ある?
544デフォルトの名無しさん
2020/05/04(月) 16:17:26.83ID:A6B6l9Um 「Objectオブジェクトは、すべてのオブジェクトの基本オブジェクトである」
↑これJavaScriptのある本に書いてあったのだけど、どういうこと?(ワラ
↑これJavaScriptのある本に書いてあったのだけど、どういうこと?(ワラ
545デフォルトの名無しさん
2020/05/04(月) 22:21:44.35ID:D5tu2Ze6 >>544
そのまんまだろ
基本→基底でもいいが
C#のObjectと同じ立ち位置ということ
それで分からないのなら、無視でいい
アップキャストとか考える必要のある言語でもないし、どうせ使わない
他の静的型あり言語同様、全ての型は別物、と考えていても特段問題はない
プログラミング言語なんて「知識」よりも「技能」に近いから、分からないなら分からないなりに進めばいいだけ
元の書き方でも十分分かりやすい
それで分からないのは君がオブジェクト指向を理解出来てないからだが、
どのみち無視でいい
そのまんまだろ
基本→基底でもいいが
C#のObjectと同じ立ち位置ということ
それで分からないのなら、無視でいい
アップキャストとか考える必要のある言語でもないし、どうせ使わない
他の静的型あり言語同様、全ての型は別物、と考えていても特段問題はない
プログラミング言語なんて「知識」よりも「技能」に近いから、分からないなら分からないなりに進めばいいだけ
元の書き方でも十分分かりやすい
それで分からないのは君がオブジェクト指向を理解出来てないからだが、
どのみち無視でいい
546デフォルトの名無しさん
2020/05/04(月) 22:38:13.60ID:Zdi/ARyL いやJavaはひととおりマスターしたから
オブジェクト指向はバッチリ理解している。
JavaScriptは気持ち悪いことが多すぎる。関数が変数に代入できることとか。
まるで物理で光が粒でもあるし波でもあるという二重性のことを習ったときのように頭が混乱する。
このへんの考え方について詳しくコツを教えていただけませんか?
オブジェクト指向はバッチリ理解している。
JavaScriptは気持ち悪いことが多すぎる。関数が変数に代入できることとか。
まるで物理で光が粒でもあるし波でもあるという二重性のことを習ったときのように頭が混乱する。
このへんの考え方について詳しくコツを教えていただけませんか?
547デフォルトの名無しさん
2020/05/04(月) 22:39:31.98ID:Zdi/ARyL Javaは体系的にスッキリしてるから実に分かりやすい。
この気持ち悪いJavaScriptは何なの?
この気持ち悪いJavaScriptは何なの?
548デフォルトの名無しさん
2020/05/04(月) 22:52:19.81ID:eA9rrZ8d オブジェクト指向の理解とは関係ないJavaScript固有の話だと思うがな。
前半部分は"Object"という名前のオブジェクトがグローバルに存在するということに
想像が及ばないと理解しづらいだろうし、後半は「基本オブジェクト」というwell-definedでない
言葉で説明しているが、これもオブジェクトが他のオブジェクトのプロパティを継承する
prototype継承を知らなければこの文章だけからは理解しにくいだろう。
前半部分は"Object"という名前のオブジェクトがグローバルに存在するということに
想像が及ばないと理解しづらいだろうし、後半は「基本オブジェクト」というwell-definedでない
言葉で説明しているが、これもオブジェクトが他のオブジェクトのプロパティを継承する
prototype継承を知らなければこの文章だけからは理解しにくいだろう。
549デフォルトの名無しさん
2020/05/05(火) 00:28:49.85ID:esp/1iza >>546
> 関数が変数に代入できることとか。
Javaも出来るようになっただろ
というかメジャー言語で出来なかったのはJavaだけで、それ以外の言語は全部出来てる
Cでもだ
コツ?そりゃお前が何も知らない馬鹿だとちゃんと自覚することだよ
他言語少しでもかじってれば、そんなところで引っかかることはない
(ただしJavaの連中はこのタイプ=他言語なんて全く知らない馬鹿も多いとは聞くが)
>>548
そうか?こいつは分かったつもりの馬鹿だと思うぞ
確認したが、JavaもObjectクラスあるし、使い方としてはJavaのObjectとも同じ立ち位置だ
> クラス ArrayList<E>
> java.lang.Object
> java.util.AbstractCollection<E>
> java.util.AbstractList<E>
> java.util.ArrayList<E>
> https://docs.oracle.com/javase/jp/7/api/java/util/ArrayList.html
これを
> 「Objectオブジェクトは、すべてのオブジェクトの基本オブジェクトである」
と表現されて理解出来てないのだから、Javaもオブジェクト指向も分かってない馬鹿だよ
この部分はまだプロトタイプベースがどうとか以前の問題だ
まあ正直俺はプロトタイプベースに大して戸惑わなかったし、
今でもプロトタイプベースの方がクラスベースより表現範囲が広いので良いと思ってる
そしてこいつはいわゆる「クラス脳」で永遠とプロトタイプベースを理解出来ないのだろう
といっても実際にプロトタイプベースでないと組めないような事をするのは希だし、
クラス脳の為にクラス構文も入ったので、別段問題でもないけど
> 関数が変数に代入できることとか。
Javaも出来るようになっただろ
というかメジャー言語で出来なかったのはJavaだけで、それ以外の言語は全部出来てる
Cでもだ
コツ?そりゃお前が何も知らない馬鹿だとちゃんと自覚することだよ
他言語少しでもかじってれば、そんなところで引っかかることはない
(ただしJavaの連中はこのタイプ=他言語なんて全く知らない馬鹿も多いとは聞くが)
>>548
そうか?こいつは分かったつもりの馬鹿だと思うぞ
確認したが、JavaもObjectクラスあるし、使い方としてはJavaのObjectとも同じ立ち位置だ
> クラス ArrayList<E>
> java.lang.Object
> java.util.AbstractCollection<E>
> java.util.AbstractList<E>
> java.util.ArrayList<E>
> https://docs.oracle.com/javase/jp/7/api/java/util/ArrayList.html
これを
> 「Objectオブジェクトは、すべてのオブジェクトの基本オブジェクトである」
と表現されて理解出来てないのだから、Javaもオブジェクト指向も分かってない馬鹿だよ
この部分はまだプロトタイプベースがどうとか以前の問題だ
まあ正直俺はプロトタイプベースに大して戸惑わなかったし、
今でもプロトタイプベースの方がクラスベースより表現範囲が広いので良いと思ってる
そしてこいつはいわゆる「クラス脳」で永遠とプロトタイプベースを理解出来ないのだろう
といっても実際にプロトタイプベースでないと組めないような事をするのは希だし、
クラス脳の為にクラス構文も入ったので、別段問題でもないけど
550デフォルトの名無しさん
2020/05/05(火) 02:37:44.95ID:rwJ86+M0 class Abc
end
多くの言語では、このように継承元を書かずに、クラスを定義した場合は、
Object クラスから直接継承したとみなされる
普通は、継承チェーンを遡ると、Object クラスに突き当たる。
すべてのクラスの祖先
この板のJavaScript のスレは、荒らし対策で緊急避難用に作られたもの。
web 制作管理板のスレへ書き込んだ方がよい
こちらには、荒らししかいない
荒らしは必ず、2回書き込む。
自分のレスに、リンクを付けて「そうだよな」みたいに自演する
多くの人が言ってるように見せかける。
午前、3時とかでも、同時に2つのレスを書くw
end
多くの言語では、このように継承元を書かずに、クラスを定義した場合は、
Object クラスから直接継承したとみなされる
普通は、継承チェーンを遡ると、Object クラスに突き当たる。
すべてのクラスの祖先
この板のJavaScript のスレは、荒らし対策で緊急避難用に作られたもの。
web 制作管理板のスレへ書き込んだ方がよい
こちらには、荒らししかいない
荒らしは必ず、2回書き込む。
自分のレスに、リンクを付けて「そうだよな」みたいに自演する
多くの人が言ってるように見せかける。
午前、3時とかでも、同時に2つのレスを書くw
551デフォルトの名無しさん
2020/05/05(火) 02:42:45.62ID:rwJ86+M0 ほとんどの言語で、関数も変数に代入できる。
別名みたいなもの。Functor
変数 = f
変数 = f( )
上は、関数の代入で、
下は、関数の呼び出し
( ) が、関数呼び出し演算子
別名みたいなもの。Functor
変数 = f
変数 = f( )
上は、関数の代入で、
下は、関数の呼び出し
( ) が、関数呼び出し演算子
552デフォルトの名無しさん
2020/05/05(火) 10:37:45.75ID:esp/1iza553549
2020/05/05(火) 10:39:12.27ID:esp/1iza >>548
お前もprototype継承を特別視過ぎ
> 前半部分は"Object"という名前のオブジェクトがグローバルに存在するということに想像が及ばないと理解しづらいだろうし、
Javaにも全く同じ立ち位置のObjectが存在してる
Javaを知らないか、知っててピンと来ない=単なる馬鹿か
> 後半は「基本オブジェクト」というwell-definedでない言葉で説明しているが
C#でも全く同じ表現だ
> Object クラス
> これは、全 .NET クラスの基本クラスであり、型階層のルートです。
> https://docs.microsoft.com/ja-jp/dotnet/api/system.object?view=netcore-3.1
prototypeベースだからクラスではなくオブジェクトとなっている
だからこの表現で正しいんだよ
> オブジェクト指向の理解とは関係ないJavaScript固有の話だと思うがな。
これもダウト
> 多くの言語では、このように継承元を書かずに、クラスを定義した場合は、Object クラスから直接継承したとみなされる (550)
ホントかよ、と思ったが、少なくともJavaとC#ではそうなるようだ(JavaScriptもだが)
これは本来は言語ではなくフレームワークの仕様であり、C++はそうなのだが、
少なくともJavaとC#は最初からオブジェクト指向大前提(のフレームワークを使う前提)でしか使えない仕様らしい
が、それはさておき、全ての型のルートを持ってボックス化出来るようになっており、それを利用する、というのは、
典型的なオブジェクト指向の使い方であって、JavaScript固有の話でも何でもない
というか、むしろ、JavaScript固有の話なんて何もない
prototypeも別にJavaScriptが発明したものでもない
初見だとそれなりに戸惑う、というだけ
ただしJavaScriptのオブジェクト指向なんてJava/C#のオブジェクト指向からすると全く使い物にならない物だし、
実際にボックス化やアップ/ダウンキャスト等を考える必要なんてほぼ無いだろ
お前自身もオブジェクト指向を正しく理解出来てないのだと思うぜ
お前もprototype継承を特別視過ぎ
> 前半部分は"Object"という名前のオブジェクトがグローバルに存在するということに想像が及ばないと理解しづらいだろうし、
Javaにも全く同じ立ち位置のObjectが存在してる
Javaを知らないか、知っててピンと来ない=単なる馬鹿か
> 後半は「基本オブジェクト」というwell-definedでない言葉で説明しているが
C#でも全く同じ表現だ
> Object クラス
> これは、全 .NET クラスの基本クラスであり、型階層のルートです。
> https://docs.microsoft.com/ja-jp/dotnet/api/system.object?view=netcore-3.1
prototypeベースだからクラスではなくオブジェクトとなっている
だからこの表現で正しいんだよ
> オブジェクト指向の理解とは関係ないJavaScript固有の話だと思うがな。
これもダウト
> 多くの言語では、このように継承元を書かずに、クラスを定義した場合は、Object クラスから直接継承したとみなされる (550)
ホントかよ、と思ったが、少なくともJavaとC#ではそうなるようだ(JavaScriptもだが)
これは本来は言語ではなくフレームワークの仕様であり、C++はそうなのだが、
少なくともJavaとC#は最初からオブジェクト指向大前提(のフレームワークを使う前提)でしか使えない仕様らしい
が、それはさておき、全ての型のルートを持ってボックス化出来るようになっており、それを利用する、というのは、
典型的なオブジェクト指向の使い方であって、JavaScript固有の話でも何でもない
というか、むしろ、JavaScript固有の話なんて何もない
prototypeも別にJavaScriptが発明したものでもない
初見だとそれなりに戸惑う、というだけ
ただしJavaScriptのオブジェクト指向なんてJava/C#のオブジェクト指向からすると全く使い物にならない物だし、
実際にボックス化やアップ/ダウンキャスト等を考える必要なんてほぼ無いだろ
お前自身もオブジェクト指向を正しく理解出来てないのだと思うぜ
554デフォルトの名無しさん
2020/05/05(火) 10:56:56.68ID:ZXlt5r8n 「Objectオブジェクト」といきなり言われて、それがJavaのObjectクラスのようなものと
想像できなくても別に不思議はないかと。
想像できなくても別に不思議はないかと。
555デフォルトの名無しさん
2020/05/05(火) 11:16:54.06ID:esp/1iza >>554
ねえよ
俺はそれは単なる馬鹿だとしか認識しない
少なくともこの馬鹿はJavaもオブジェクト指向もマスターしてるつもりなんだぜ
自分が何も知らないことを自覚できず、
> (ワラ
とかやってるから馬鹿のままなんだよ
こいつは既に老害化してる
JavaですらJava8(2014)から関数ポインタを使えるようになってる
こいつはこのことすら知らない
といっても実際Java界隈なんてその程度だとは思うが
オブジェクト指向を利用してコードを共通化しようとすると、どうしても
C++のように型消去するか、
JavaやC#やJavaScriptのObjectのような型階層のルートが必要になってくる
これらの言語で全てそれが「Object」という名前で統一されているのは偶然ではない
オブジェクト指向(=ObjectOriented)のルートだからObjectなんだよ
今時のメジャー言語は全てオブジェクト指向出来るようになってるし、
逆に、「Object」とかいう物が出てきたら、これか!とピンと来ない方がおかしい
つっても重ねて言うが、Javaの連中なんてその程度なのも事実だが
ねえよ
俺はそれは単なる馬鹿だとしか認識しない
少なくともこの馬鹿はJavaもオブジェクト指向もマスターしてるつもりなんだぜ
自分が何も知らないことを自覚できず、
> (ワラ
とかやってるから馬鹿のままなんだよ
こいつは既に老害化してる
JavaですらJava8(2014)から関数ポインタを使えるようになってる
こいつはこのことすら知らない
といっても実際Java界隈なんてその程度だとは思うが
オブジェクト指向を利用してコードを共通化しようとすると、どうしても
C++のように型消去するか、
JavaやC#やJavaScriptのObjectのような型階層のルートが必要になってくる
これらの言語で全てそれが「Object」という名前で統一されているのは偶然ではない
オブジェクト指向(=ObjectOriented)のルートだからObjectなんだよ
今時のメジャー言語は全てオブジェクト指向出来るようになってるし、
逆に、「Object」とかいう物が出てきたら、これか!とピンと来ない方がおかしい
つっても重ねて言うが、Javaの連中なんてその程度なのも事実だが
556デフォルトの名無しさん
2020/05/05(火) 11:26:22.49ID:GGtHBQ+v >>555
関数ポインタと参照は違うって知ってる?
関数ポインタと参照は違うって知ってる?
557デフォルトの名無しさん
2020/05/05(火) 11:39:37.07ID:esp/1iza >>556
勿論知ってるぞ
Javaのが「関数ポインタ」ではなく「関数参照」だというのならそうなのだろう
見て分かるとおり、俺はJavaは使ってないからその辺は正確ではない
ただぶっちゃけ、ポインタと参照はほぼ等価だし、
C++のようにそれらが別物だと明示的な言語以外では混同してても全く問題ないと思うが
実際、JavaScriptにおいて「参照」を「ポインタ」と言い換えても何ら問題ないだろ
どう見ても俺の揚げ足取りをしようとしているように見えるが、
それが価値あると思うなら頑張ってどうぞ
ただし俺は馬鹿と話す意味はないと見たらすぐ降りる
その場合はお前の勝ちでいい
んで、関数ポインタと参照の違いを知っているお前は、どんな素晴らしい知見を披露してくれるの?
是非よろしく
勿論知ってるぞ
Javaのが「関数ポインタ」ではなく「関数参照」だというのならそうなのだろう
見て分かるとおり、俺はJavaは使ってないからその辺は正確ではない
ただぶっちゃけ、ポインタと参照はほぼ等価だし、
C++のようにそれらが別物だと明示的な言語以外では混同してても全く問題ないと思うが
実際、JavaScriptにおいて「参照」を「ポインタ」と言い換えても何ら問題ないだろ
どう見ても俺の揚げ足取りをしようとしているように見えるが、
それが価値あると思うなら頑張ってどうぞ
ただし俺は馬鹿と話す意味はないと見たらすぐ降りる
その場合はお前の勝ちでいい
んで、関数ポインタと参照の違いを知っているお前は、どんな素晴らしい知見を披露してくれるの?
是非よろしく
558デフォルトの名無しさん
2020/05/05(火) 11:48:55.80ID:n32zrCmj > 実際、JavaScriptにおいて「参照」を「ポインタ」と言い換えても何ら問題ないだろ
だめ。ポインタは数値で置き換えられるアドレスであり
ポインタはアドレス加算などの演算ができるもの
アドレス加算ができない以上それは参照であってポインタではない
そしてJavaで参照はずっと前からできる
だめ。ポインタは数値で置き換えられるアドレスであり
ポインタはアドレス加算などの演算ができるもの
アドレス加算ができない以上それは参照であってポインタではない
そしてJavaで参照はずっと前からできる
559デフォルトの名無しさん
2020/05/05(火) 12:10:13.42ID:esp/1iza >>558
> そしてJavaで参照はずっと前からできる
Java8で新しく出来るようになったのは、『関数』参照な
話をずらすな
そして>>546が理解出来てないのはこれだ
> ポインタはアドレス加算などの演算ができるもの
> アドレス加算ができない以上それは参照であってポインタではない
それはC++での定義な
RustやGoも「ポインタ」を扱えるが、こちらは最初から加算なんて出来ないようになっている(確か)
少なくともRustやGoの定義する「ポインタ」はそう
というか、C++の参照自体が「ポインタは危険なのでコンパイラ側で対策して『参照』と命名しました」でしかないし、
JavaやC#で言う参照も全くこれと同じなのだが、当然実体は「ポインタ」でしかなく、
当然関数呼び出しの引数にはまんま「ポインタ」が積まれる
というかそこら辺理解出来てないのはやっぱりJavaしか知らない馬鹿だからだ
ポインタと参照が実体は同じだ、ということを理解出来ないのも
(論理的な意味が違うだけで、物理的な意味や値は同じ)
いずれにしてもJavaってのはかなり簡素化された言語で、
コンピューターの実体(物理構造)を知らなくてもいいように出来ている
これ自体はいいことなのだが、
その程度の知識なのに「ポインタと参照は違う(キリッ」とかやるのは間違ってる
自分の知識が全く足りてないことを認めて、きちんと学んだ方がいい
ポインタはCの鬼門だとされているが、現実として、ポインタを扱った方が動作効率が圧倒的によく、
結果的にJavaでもJavaScriptでも、或いは他言語でも、内部動作はポインタで作られているので、
どうしてこういう動きをするのか、どうしてこういう仕様なのか、を理解するのは、ポインタの理解が不可欠だ
ある程度以上のプログラマになる為には、ポインタの理解から逃げているようでは無理だ
これが逆にJavaプログラマが相変わらず糞な遠因でもある
> そしてJavaで参照はずっと前からできる
Java8で新しく出来るようになったのは、『関数』参照な
話をずらすな
そして>>546が理解出来てないのはこれだ
> ポインタはアドレス加算などの演算ができるもの
> アドレス加算ができない以上それは参照であってポインタではない
それはC++での定義な
RustやGoも「ポインタ」を扱えるが、こちらは最初から加算なんて出来ないようになっている(確か)
少なくともRustやGoの定義する「ポインタ」はそう
というか、C++の参照自体が「ポインタは危険なのでコンパイラ側で対策して『参照』と命名しました」でしかないし、
JavaやC#で言う参照も全くこれと同じなのだが、当然実体は「ポインタ」でしかなく、
当然関数呼び出しの引数にはまんま「ポインタ」が積まれる
というかそこら辺理解出来てないのはやっぱりJavaしか知らない馬鹿だからだ
ポインタと参照が実体は同じだ、ということを理解出来ないのも
(論理的な意味が違うだけで、物理的な意味や値は同じ)
いずれにしてもJavaってのはかなり簡素化された言語で、
コンピューターの実体(物理構造)を知らなくてもいいように出来ている
これ自体はいいことなのだが、
その程度の知識なのに「ポインタと参照は違う(キリッ」とかやるのは間違ってる
自分の知識が全く足りてないことを認めて、きちんと学んだ方がいい
ポインタはCの鬼門だとされているが、現実として、ポインタを扱った方が動作効率が圧倒的によく、
結果的にJavaでもJavaScriptでも、或いは他言語でも、内部動作はポインタで作られているので、
どうしてこういう動きをするのか、どうしてこういう仕様なのか、を理解するのは、ポインタの理解が不可欠だ
ある程度以上のプログラマになる為には、ポインタの理解から逃げているようでは無理だ
これが逆にJavaプログラマが相変わらず糞な遠因でもある
560デフォルトの名無しさん
2020/05/07(木) 13:23:56.11ID:fANici3H >>546
> いやJavaはひととおりマスターしたから
> オブジェクト指向はバッチリ理解している。
>547
> Javaは体系的にスッキリしてるから実に分かりやすい。
プログラミング言語をJavaしか使ったことないJavaおじさんか?
> いやJavaはひととおりマスターしたから
> オブジェクト指向はバッチリ理解している。
>547
> Javaは体系的にスッキリしてるから実に分かりやすい。
プログラミング言語をJavaしか使ったことないJavaおじさんか?
561デフォルトの名無しさん
2020/05/07(木) 22:35:41.72ID:U9K3TqbR >>560
この話題を続ける意味もないと思うが
Javaおじさんですらないはず
多分Java若者馬鹿老害
Java8で関数ポインタが導入された為、
それ以前に完全にJava7をマスターしている「Javaおじさん」なら導入するかどうかの大議論をしているはず
少なくともJavaの一線で働いている奴が知識を6年間もupdateしてないとは考えづらい
使ったことが無くても、また、(コーディングルール上)職場で使えないとしても、全く知らないというのはない(と思いたい)
そしてオブジェクト指向への理解も皆無だ、これは「Javaおじさん」ならあり得ない
最近の若者はプログラミング言語の選択肢が多く、若干戸惑っているように思える
ぶっちゃけ最初の最初の言語なんてどれでも大差ないのだが、「僕が選んで学んだ言語すごい=僕すごい」をやる奴が多すぎる
こいつも何らかの理由でJavaを選択し、「Javaすごい」とポジショントークをしているだけ
おそらく年齢は20代、プログラミング言語はJavaしか知らず、Java7の本でJavaを勉強した人だ
ただこの時点でこの老害っぷりは酷い
一応言っておくが、年齢ではなく、自分の考え方が絶対に正しいと固執し始めると老害になる
546はもうちょっと真摯にプログラミングをした方がいい
ただしJavaがスッキリ、というか、簡単なのは事実だ
だから大受けした
そしてPythonの方がもっと簡単だから、もっと大受けしつつあるだけ
ただ現実問題として、JavaScriptのオブジェクト指向なんてどうせ使い物にならないから、無視でいい
しかしまた現実として、今現在のシェアはJavaScript>Javaなのだから、
どうしてそうなったのかが理解出来ないうちは「Javaすごい=僕すごい」みたいな幼稚な考え方は止めた方がいい
Java自体が凄かったのも事実だが、それも過去になりつつある
この話題を続ける意味もないと思うが
Javaおじさんですらないはず
多分Java若者馬鹿老害
Java8で関数ポインタが導入された為、
それ以前に完全にJava7をマスターしている「Javaおじさん」なら導入するかどうかの大議論をしているはず
少なくともJavaの一線で働いている奴が知識を6年間もupdateしてないとは考えづらい
使ったことが無くても、また、(コーディングルール上)職場で使えないとしても、全く知らないというのはない(と思いたい)
そしてオブジェクト指向への理解も皆無だ、これは「Javaおじさん」ならあり得ない
最近の若者はプログラミング言語の選択肢が多く、若干戸惑っているように思える
ぶっちゃけ最初の最初の言語なんてどれでも大差ないのだが、「僕が選んで学んだ言語すごい=僕すごい」をやる奴が多すぎる
こいつも何らかの理由でJavaを選択し、「Javaすごい」とポジショントークをしているだけ
おそらく年齢は20代、プログラミング言語はJavaしか知らず、Java7の本でJavaを勉強した人だ
ただこの時点でこの老害っぷりは酷い
一応言っておくが、年齢ではなく、自分の考え方が絶対に正しいと固執し始めると老害になる
546はもうちょっと真摯にプログラミングをした方がいい
ただしJavaがスッキリ、というか、簡単なのは事実だ
だから大受けした
そしてPythonの方がもっと簡単だから、もっと大受けしつつあるだけ
ただ現実問題として、JavaScriptのオブジェクト指向なんてどうせ使い物にならないから、無視でいい
しかしまた現実として、今現在のシェアはJavaScript>Javaなのだから、
どうしてそうなったのかが理解出来ないうちは「Javaすごい=僕すごい」みたいな幼稚な考え方は止めた方がいい
Java自体が凄かったのも事実だが、それも過去になりつつある
562デフォルトの名無しさん
2020/05/12(火) 13:08:44.44ID:4J1vnKbM '(シングルクウォーテーション)と"(ダブルクウォーテーション)の使い分けに悩みます。
悩みを消しこれだと自信を持って使う考え方はありますか?
どっちを使ってもいい場合とどちらか限定の使い方があるので気持ち悪いですw
悩みを消しこれだと自信を持って使う考え方はありますか?
どっちを使ってもいい場合とどちらか限定の使い方があるので気持ち悪いですw
563デフォルトの名無しさん
2020/05/12(火) 13:33:40.94ID:01D/nxpT >>562
シェルスクリプトだと、'と"とは、展開の有無等であきらかに異なるから、
それにしたがって使い分ける。
どちらも同じって場合は、文字列に空白が含まれる場合や入れ子になる場合に"を使って、
その他、基本的には'でくくってる。
jsやpythonなんかがこれに該当。
"しか使えないバッチファイルは文句なしに"。
ただし、*nix由来のプログラムの場合、オプション内部で'を入れ子で使うことがある。
こんな感じ?
シェルスクリプトだと、'と"とは、展開の有無等であきらかに異なるから、
それにしたがって使い分ける。
どちらも同じって場合は、文字列に空白が含まれる場合や入れ子になる場合に"を使って、
その他、基本的には'でくくってる。
jsやpythonなんかがこれに該当。
"しか使えないバッチファイルは文句なしに"。
ただし、*nix由来のプログラムの場合、オプション内部で'を入れ子で使うことがある。
こんな感じ?
564デフォルトの名無しさん
2020/05/13(水) 06:16:03.92ID:VSt/R8YQ VSCode のデフォルトが、Beautify だろ。
拡張機能のPrettier とか
'・" かどうかは、これらの設定で変わる
HTML の属性が、" で囲むから、それらの文字列をさらに囲むには、' を使う
JavaScript の話は、web 制作管理板の方で聞いてください!
この板には、あまり人がいないから
拡張機能のPrettier とか
'・" かどうかは、これらの設定で変わる
HTML の属性が、" で囲むから、それらの文字列をさらに囲むには、' を使う
JavaScript の話は、web 制作管理板の方で聞いてください!
この板には、あまり人がいないから
565質問者
2020/05/13(水) 13:14:18.33ID:5xfr/P29 こちらで良いかわかりませんが、
・web上でモニタリングをしたい
・10秒ごとに自動更新
・固定htmlに要素を用意。javascriptで変数を持ち、値によって要素の画像を切り替える。
getElementById(*).src=****
setTimeout(this,10000)
これをサーバーに置いて10人くらいがアクセスしたら、サーバーの負荷はどうでしょうか?
画像切り替えるときにサーバーにアクセスするので、やはりだめでしょうか?
わかる方いましたらお願いいたします。
・web上でモニタリングをしたい
・10秒ごとに自動更新
・固定htmlに要素を用意。javascriptで変数を持ち、値によって要素の画像を切り替える。
getElementById(*).src=****
setTimeout(this,10000)
これをサーバーに置いて10人くらいがアクセスしたら、サーバーの負荷はどうでしょうか?
画像切り替えるときにサーバーにアクセスするので、やはりだめでしょうか?
わかる方いましたらお願いいたします。
566デフォルトの名無しさん
2020/05/13(水) 13:59:35.07ID:VSt/R8YQ 数枚程度なら、すべての画像を送ってしまって、
ブラウザ側で、スライダーなどで切り替える
Google map みたいに、無数の画像があるなら、
ajax でサーバー側にアクセスして、必要な画像を送ってもらう
JavaScript の話は、web 制作管理板の方で聞いてください!
この板には、あまり人がいないから
ブラウザ側で、スライダーなどで切り替える
Google map みたいに、無数の画像があるなら、
ajax でサーバー側にアクセスして、必要な画像を送ってもらう
JavaScript の話は、web 制作管理板の方で聞いてください!
この板には、あまり人がいないから
567デフォルトの名無しさん
2020/05/13(水) 14:02:19.06ID:WBibu7Ic >>565
いろいろイミフ
>・web上でモニタリングをしたい
誰が何をどうやってモニタリングするの?
>・10秒ごとに自動更新
何を更新するの?
>これをサーバーに置いて10人くらいがアクセスしたら、サーバーの負荷はどうでしょうか?
クライアント側JavaScriptの話でサーバー負荷とどう関係があるの?
いろいろイミフ
>・web上でモニタリングをしたい
誰が何をどうやってモニタリングするの?
>・10秒ごとに自動更新
何を更新するの?
>これをサーバーに置いて10人くらいがアクセスしたら、サーバーの負荷はどうでしょうか?
クライアント側JavaScriptの話でサーバー負荷とどう関係があるの?
568デフォルトの名無しさん
2020/05/13(水) 14:12:08.64ID:shZVwRy5 >>563
そうざますかありがとう
どっちみち慣れないうちは混乱しますね
JSだけのエンジニアなら当然その人の哲学や宗教により迷わず判断してると思うけど
こっちはJSは片手間でやっててさわるのが数年ぶりということがあるから混乱しますわ
そうざますかありがとう
どっちみち慣れないうちは混乱しますね
JSだけのエンジニアなら当然その人の哲学や宗教により迷わず判断してると思うけど
こっちはJSは片手間でやっててさわるのが数年ぶりということがあるから混乱しますわ
569デフォルトの名無しさん
2020/05/13(水) 14:14:46.69ID:URUm4HTQ 何の要素か知らんが、
「cssで作るスライドショー」とかでググったら答えが落ちてそう
「cssで作るスライドショー」とかでググったら答えが落ちてそう
570デフォルトの名無しさん
2020/05/13(水) 14:21:07.89ID:WBibu7Ic >>568
自分で決められないならとりあえずビッグネームのstyle guideに従っとけばいい
JavaScript =>single quote
HTML => double quote
CSS => single quote
https://google.github.io/styleguide/jsguide.html#features-strings-use-single-quotes
https://google.github.io/styleguide/htmlcssguide.html#HTML_Quotation_Marks
https://google.github.io/styleguide/htmlcssguide.html#CSS_Quotation_Marks
自分で決められないならとりあえずビッグネームのstyle guideに従っとけばいい
JavaScript =>single quote
HTML => double quote
CSS => single quote
https://google.github.io/styleguide/jsguide.html#features-strings-use-single-quotes
https://google.github.io/styleguide/htmlcssguide.html#HTML_Quotation_Marks
https://google.github.io/styleguide/htmlcssguide.html#CSS_Quotation_Marks
571質問者
2020/05/13(水) 15:12:19.72ID:5xfr/P29 >>566
ありがとうございます。
>>567
>>・web上でモニタリングをしたい
>誰が何をどうやってモニタリングするの?
やりたい事は、100個のセンサや機械の情報をブラウザ上にリアルタイムで表示して、異常ならば、ブラウザを見てる人に通知したいということです。
>・10秒ごとに自動更新
センサーや機械の情報です。
>>これをサーバーに置いて10人くらいがアクセスしたら、サーバーの負荷はどうでしょうか?
>クライアント側JavaScriptの話でサーバー負荷とどう関係があるの?
javascriptで動的にイメージ画像を切り替えたら、結局サーバーにアクセスすることになってしまうのではと思ったのです。
画像イメージはサーバー上に置かれているので。一回アクセスしたらキャッシュされるかもしれませんが。
>>569
ありがとうございます。
ありがとうございます。
>>567
>>・web上でモニタリングをしたい
>誰が何をどうやってモニタリングするの?
やりたい事は、100個のセンサや機械の情報をブラウザ上にリアルタイムで表示して、異常ならば、ブラウザを見てる人に通知したいということです。
>・10秒ごとに自動更新
センサーや機械の情報です。
>>これをサーバーに置いて10人くらいがアクセスしたら、サーバーの負荷はどうでしょうか?
>クライアント側JavaScriptの話でサーバー負荷とどう関係があるの?
javascriptで動的にイメージ画像を切り替えたら、結局サーバーにアクセスすることになってしまうのではと思ったのです。
画像イメージはサーバー上に置かれているので。一回アクセスしたらキャッシュされるかもしれませんが。
>>569
ありがとうございます。
572デフォルトの名無しさん
2020/05/13(水) 15:52:15.36ID:WBibu7Ic >>571
なるほど
サーバー側のセンサーや機械の状態更新を
クライアントからのアクセスによってトリガーする仕組みだと不味いけど
そうじゃなくてサーバー側ですでに存在してるデータに対して
10人くらいが数秒に1回アクセスするんなら
その負荷は微々たるものだよ
各状態に応じた画像は
最初にモニタリング用画面にアクセスした時に全部ダウンロードさせておいて
数秒に1回AJAXでサーバー側の状態のみ取得してその値によって画面表示を切り替えればいい
なるほど
サーバー側のセンサーや機械の状態更新を
クライアントからのアクセスによってトリガーする仕組みだと不味いけど
そうじゃなくてサーバー側ですでに存在してるデータに対して
10人くらいが数秒に1回アクセスするんなら
その負荷は微々たるものだよ
各状態に応じた画像は
最初にモニタリング用画面にアクセスした時に全部ダウンロードさせておいて
数秒に1回AJAXでサーバー側の状態のみ取得してその値によって画面表示を切り替えればいい
573質問者
2020/05/13(水) 16:03:47.03ID:5xfr/P29 >>572
そうです。
>最初にモニタリング用画面にアクセスした時に全部ダウンロードさせておいて
この技術がわかりません。何をキーワードにして調べれば良いのでしょうか、すみませんが、お願いいたします。
そうです。
>最初にモニタリング用画面にアクセスした時に全部ダウンロードさせておいて
この技術がわかりません。何をキーワードにして調べれば良いのでしょうか、すみませんが、お願いいたします。
574質問者
2020/05/13(水) 16:51:28.10ID:5xfr/P29 すみません。解決しました。
最初にリロードしたときに正常な画像だけでなく、異常な画像もリンク(表示しない)しておけばよいのですね。
そうしておけばブラウザ側にキャッシュされるので。
最初にリロードしたときに正常な画像だけでなく、異常な画像もリンク(表示しない)しておけばよいのですね。
そうしておけばブラウザ側にキャッシュされるので。
575デフォルトの名無しさん
2020/05/13(水) 17:25:36.80ID:WBibu7Ic >>574
いろいろ方法あるけど一番堅いのはCSSスプライト
https://developer.mozilla.org/ja/docs/Web/CSS/CSS_Images/Implementing_image_sprites_in_CSS
他には
- visibility: hidden
- JavaScriptでページロード時に画像を読み込む
- 凡例として異常時の画像も一つ表示しておく
など
この辺の話はJSのプログラミングの話じゃないので
誰か書いてたけどweb制作板で聞いたほうがいいかも
いろいろ方法あるけど一番堅いのはCSSスプライト
https://developer.mozilla.org/ja/docs/Web/CSS/CSS_Images/Implementing_image_sprites_in_CSS
他には
- visibility: hidden
- JavaScriptでページロード時に画像を読み込む
- 凡例として異常時の画像も一つ表示しておく
など
この辺の話はJSのプログラミングの話じゃないので
誰か書いてたけどweb制作板で聞いたほうがいいかも
577564
2020/05/13(水) 18:01:05.87ID:VSt/R8YQ578デフォルトの名無しさん
2020/05/13(水) 18:09:08.10ID:VSt/R8YQ >>571
>画像イメージはサーバー上に置かれているので。一回アクセスしたらキャッシュされるかもしれません
確かに、同じファイルパスなら、キャッシュを使う
データは、ajax で、JSON でやりとりすることが定番
>画像イメージはサーバー上に置かれているので。一回アクセスしたらキャッシュされるかもしれません
確かに、同じファイルパスなら、キャッシュを使う
データは、ajax で、JSON でやりとりすることが定番
580デフォルトの名無しさん
2020/06/20(土) 11:09:53.20ID:iiFnSxTf できる訳ないだろうなと思いつつ聞くんだけど、javascriptでローカルのファイルを別のディレクトリに移動させたりすることってできる?
581デフォルトの名無しさん
2020/06/20(土) 13:24:24.10ID:hfA4Ec7B つNode
582デフォルトの名無しさん
2020/06/20(土) 13:27:05.74ID:hfA4Ec7B つcscript/wscript
583デフォルトの名無しさん
2020/06/20(土) 20:45:20.50ID:iiFnSxTf >>581
これはサーバサイドでjs書いたときの話だもんね
ユーザーがブラウザ操作してる時に動くブラウザ上のjsでファイル操作がしたいんだよなあ
そんなこと出来たらやべーからまあ無理なんだろうけど、なんか代わりの手段ないものか
これはサーバサイドでjs書いたときの話だもんね
ユーザーがブラウザ操作してる時に動くブラウザ上のjsでファイル操作がしたいんだよなあ
そんなこと出来たらやべーからまあ無理なんだろうけど、なんか代わりの手段ないものか
584デフォルトの名無しさん
2020/06/20(土) 21:17:03.49ID:hfA4Ec7B >>583
プラットフォームとしてブラウザが欲しいのなら electron = chromium + node がそれだろ。
代表アプリはatomとVSCode。
サイトのJSでユーザーのローカルファイルを弄りたいというのなら、それが出来るようなら困るだろ。
プラットフォームとしてブラウザが欲しいのなら electron = chromium + node がそれだろ。
代表アプリはatomとVSCode。
サイトのJSでユーザーのローカルファイルを弄りたいというのなら、それが出来るようなら困るだろ。
585デフォルトの名無しさん
2020/06/20(土) 21:21:46.31ID:hfA4Ec7B586デフォルトの名無しさん
2020/06/29(月) 12:03:45.83ID:Na3g7Gku うんち
587デフォルトの名無しさん
2020/06/29(月) 12:04:05.78ID:Na3g7Gku htmlタグに書くonclick=の中には
JSの処理を直接書くこともfunction(){}と書いてその中に処理を書くことも、どちらもokですか?その違いはありますか?
JSの処理を直接書くこともfunction(){}と書いてその中に処理を書くことも、どちらもokですか?その違いはありますか?
588デフォルトの名無しさん
2020/06/29(月) 12:07:23.28ID:Na3g7Gku onclick=のあと関数名(関数が入った変数)を書く場合は()は書かないほうがいいですか?書くべきですか?
<button onclick='unko'> or <button onclick='unko()'>
unko=function(){
alert('unko!');
}
みたいなときです。
<button onclick='unko'> or <button onclick='unko()'>
unko=function(){
alert('unko!');
}
みたいなときです。
589デフォルトの名無しさん
2020/06/29(月) 12:51:41.62ID:I7ZZ3pdS 最初に喧嘩売ってきてわろた
590デフォルトの名無しさん
2020/06/29(月) 12:54:40.10ID:ze6DZkOI591デフォルトの名無しさん
2020/06/29(月) 21:14:29.05ID:WKcpUWSm >>586-588
オムツがまだ取れてなくてウンコ臭い初心者はWeb板へ
何度も言われていることだが
それ以前にお前レベルの超超超超初心者はそもそもここ(5ch)に来るべきではない
各自が勝手に意見を言ってるだけだから、それなりの確率で間違いや勘違いはどうしても発生する
それを自分で修正する能力がないうちは、5chを使うのは止めた方がいい
超超超超初心者なら、少なくとも間違っていたら訂正してもらえる場所、
つまり本か信頼出来るWebサイトを参考にするべきだ
なお俺はお前みたいなウンコお漏らし初心者用の本やサイトは知らない
というか、そんな、始めて3時間で通過するレベルの事柄を、ネットで質問しようとすること自体、かなり頭がおかしい
少なくともお前はプログラマには向いてないし、間違って就職しても浮きまくって仲間に入れず不幸な人生になるから止めとけ
それを教えてもらいたければ、「1週間の集中講座ででWebページ開設出来ます!」みたいなセミナーとかに行け
JavaScriptの部を始めて10分後にはそれについて教えてくれるだろう
オムツがまだ取れてなくてウンコ臭い初心者はWeb板へ
何度も言われていることだが
それ以前にお前レベルの超超超超初心者はそもそもここ(5ch)に来るべきではない
各自が勝手に意見を言ってるだけだから、それなりの確率で間違いや勘違いはどうしても発生する
それを自分で修正する能力がないうちは、5chを使うのは止めた方がいい
超超超超初心者なら、少なくとも間違っていたら訂正してもらえる場所、
つまり本か信頼出来るWebサイトを参考にするべきだ
なお俺はお前みたいなウンコお漏らし初心者用の本やサイトは知らない
というか、そんな、始めて3時間で通過するレベルの事柄を、ネットで質問しようとすること自体、かなり頭がおかしい
少なくともお前はプログラマには向いてないし、間違って就職しても浮きまくって仲間に入れず不幸な人生になるから止めとけ
それを教えてもらいたければ、「1週間の集中講座ででWebページ開設出来ます!」みたいなセミナーとかに行け
JavaScriptの部を始めて10分後にはそれについて教えてくれるだろう
592デフォルトの名無しさん
2020/06/30(火) 01:12:09.33ID:l6PnVpoX >>551
通りすがりだけどソレみて長年のモヤモヤがはれました、ありがとう。
通りすがりだけどソレみて長年のモヤモヤがはれました、ありがとう。
593デフォルトの名無しさん
2020/07/23(木) 00:01:42.43ID:qAfVnVsp $("div").click(function())
594デフォルトの名無しさん
2020/07/23(木) 00:02:03.83ID:qAfVnVsp $("div").click(function(){
})
})
595デフォルトの名無しさん
2020/07/23(木) 00:05:54.40ID:qAfVnVsp $("div").click(function(){
$(this).css('background','red');
})
のこの$(this)が$("div")を指す理由はなんですか?
Javaではthisというのはそれを定義したクラスのインスタンスを指すと習いましたが。
$(this).css('background','red');
})
のこの$(this)が$("div")を指す理由はなんですか?
Javaではthisというのはそれを定義したクラスのインスタンスを指すと習いましたが。
596デフォルトの名無しさん
2020/07/23(木) 00:38:57.14ID:cGFBf2BV jQuery, Haxe のthis は、JavaScript/TypeScript のthis とは異なる。
this がwindow を指したり、おかしな部分があるので、それを変えている
それと、JavaScript の質問は、web制作管理板の方へ書き込んでください!
こちらの板は、web制作管理板が荒らしに荒らされた時に、
緊急避難的に立てられたものだから、今は使われていない
this がwindow を指したり、おかしな部分があるので、それを変えている
それと、JavaScript の質問は、web制作管理板の方へ書き込んでください!
こちらの板は、web制作管理板が荒らしに荒らされた時に、
緊急避難的に立てられたものだから、今は使われていない
597デフォルトの名無しさん
2020/07/23(木) 07:12:59.16ID:qAfVnVsp >>596
「おかしな部分があるので、それを変えている」とは?
「おかしな部分があるので、それを変えている」とは?
598デフォルトの名無しさん
2020/07/23(木) 07:13:47.98ID:qAfVnVsp thisの正体を見分けるコツはないですか?
599デフォルトの名無しさん
2020/07/23(木) 07:32:15.26ID:/b5pS+w+ >>595
> のこの$(this)が$("div")を指す理由はなんですか?
DOM APIとの互換性
例えば、これのイベントハンドラの中身を書き換えるならば
$("div").click(function(){
$(this).css('background','red');
})
このようになる。(おまけで引数のjQuery eventを追加)
$("div").click(function(event){
this.style.background = 'red';
})
このイベントハンドラ(function)はDOM APIと互換性があるので全く同じように使える。
(引数のeventはjQuery eventではなくDOM APIの eventだがある程度の互換性がある)
divElement.addEventListener('click', unction(event){
this.style.background = 'red';
})
つまりイベントハンドラをDOM APIのものと互換性があるようにしているのが理由
そうすることで、コードを相互に変換しやすくなる。
例えば後からjQuery化するときなど少しずつ移植できる。
> のこの$(this)が$("div")を指す理由はなんですか?
DOM APIとの互換性
例えば、これのイベントハンドラの中身を書き換えるならば
$("div").click(function(){
$(this).css('background','red');
})
このようになる。(おまけで引数のjQuery eventを追加)
$("div").click(function(event){
this.style.background = 'red';
})
このイベントハンドラ(function)はDOM APIと互換性があるので全く同じように使える。
(引数のeventはjQuery eventではなくDOM APIの eventだがある程度の互換性がある)
divElement.addEventListener('click', unction(event){
this.style.background = 'red';
})
つまりイベントハンドラをDOM APIのものと互換性があるようにしているのが理由
そうすることで、コードを相互に変換しやすくなる。
例えば後からjQuery化するときなど少しずつ移植できる。
600デフォルトの名無しさん
2020/07/23(木) 07:36:27.79ID:/b5pS+w+ >>598
thisは実行時に変わるからコードを見てもわからない
つまり呼び出されているコードを見てもわからない。
「誰が呼び出しているか?」を知る必要がある。
同じthisであっても「あれ」に登録して「あれ」から
呼び出されれば「それ」とは違うthisの場合がある。
だからthisが何かは仕様を調べるしかない
関数の引数にobjが入ってる場合、このobjの正体はなんですか?と
言ってるのと同じ質問だよ
thisは実行時に変わるからコードを見てもわからない
つまり呼び出されているコードを見てもわからない。
「誰が呼び出しているか?」を知る必要がある。
同じthisであっても「あれ」に登録して「あれ」から
呼び出されれば「それ」とは違うthisの場合がある。
だからthisが何かは仕様を調べるしかない
関数の引数にobjが入ってる場合、このobjの正体はなんですか?と
言ってるのと同じ質問だよ
601デフォルトの名無しさん
2020/07/23(木) 07:39:49.30ID:/b5pS+w+ >595
Javaではthisを変えられることができないが
JavaScriptはthisは呼び出し側で与えるオブジェクト
JavaScriptだけではなくRubyやPerlなどいくつかの言語は呼び出し側でthisを変更できる
Javaではthisを変えられることができないが
JavaScriptはthisは呼び出し側で与えるオブジェクト
JavaScriptだけではなくRubyやPerlなどいくつかの言語は呼び出し側でthisを変更できる
602デフォルトの名無しさん
2020/07/23(木) 08:18:34.22ID:qAfVnVsp603デフォルトの名無しさん
2020/07/23(木) 08:20:56.24ID:qAfVnVsp this=eventとなっているということかな?
604デフォルトの名無しさん
2020/07/23(木) 08:24:35.38ID:/b5pS+w+ >>603
違うぞ。eventはおまけ。thisの話とは直接関係ない
違うぞ。eventはおまけ。thisの話とは直接関係ない
605デフォルトの名無しさん
2020/07/23(木) 08:25:10.27ID:/b5pS+w+ ようするにjQueryはブラウザ標準のDOM APIと
互換性をもたせて作られているということ
互換性をもたせて作られているということ
606デフォルトの名無しさん
2020/07/23(木) 20:38:07.50ID:QHkNbR5l >>598
ID:/b5pS+w+ の言っていることは全面的に正しいが、補足すると、
> thisの正体を見分けるコツはないですか?
こんな事を言っている時点で糞サイト(或いはゴミ本)に騙されているから止めとけ。
見分ける必然性も意味もない。単なる暗黙の引数程度でしかなく、
実際にそれなりに組織的にコーディングするとcallはそれなりに使う。
DOM APIのthisがe.currentTargetを指すのはそもそもJava用の仕様、
つまりJavaでもクライアントスクリプトを書けるようにする為の仕様らしい。(とここ5chで聞いた)
しかし現在はJavaで書く奴なんて一人もいないし、JavaScriptにおいてはe.targetを全面的に使うのが正しい。
理由は、
1. thisにはe.currentTargetが入っているが、マトモなサイトなら通常はbubbleを利用する為、e.target主体で書くことになる。
つまりこの仕様のthisでは使い物にならない。
2. e.currentTragetで役に立つ場合は、Elementに直接onXXXかaddEventListenerした場合だが、
こんな事をやっているのはjQueryを使っている程度の簡単なサイトだけ。
やれば分かるがbubbleを利用した方が実行効率もよく、コードも綺麗になるから、マトモなサイトは全部そうしてる。
ただし、Elementに直接貼った方が直感的で分かりやすいので、jQueryのような簡単/初心者向けの場合には活用される。
(なおjQueryでもbubble主体で書くことは可能ではあるが、それをやるとjQueryの意味がほぼ無くなるので普通はやってないと思う)
ID:/b5pS+w+ の言っていることは全面的に正しいが、補足すると、
> thisの正体を見分けるコツはないですか?
こんな事を言っている時点で糞サイト(或いはゴミ本)に騙されているから止めとけ。
見分ける必然性も意味もない。単なる暗黙の引数程度でしかなく、
実際にそれなりに組織的にコーディングするとcallはそれなりに使う。
DOM APIのthisがe.currentTargetを指すのはそもそもJava用の仕様、
つまりJavaでもクライアントスクリプトを書けるようにする為の仕様らしい。(とここ5chで聞いた)
しかし現在はJavaで書く奴なんて一人もいないし、JavaScriptにおいてはe.targetを全面的に使うのが正しい。
理由は、
1. thisにはe.currentTargetが入っているが、マトモなサイトなら通常はbubbleを利用する為、e.target主体で書くことになる。
つまりこの仕様のthisでは使い物にならない。
2. e.currentTragetで役に立つ場合は、Elementに直接onXXXかaddEventListenerした場合だが、
こんな事をやっているのはjQueryを使っている程度の簡単なサイトだけ。
やれば分かるがbubbleを利用した方が実行効率もよく、コードも綺麗になるから、マトモなサイトは全部そうしてる。
ただし、Elementに直接貼った方が直感的で分かりやすいので、jQueryのような簡単/初心者向けの場合には活用される。
(なおjQueryでもbubble主体で書くことは可能ではあるが、それをやるとjQueryの意味がほぼ無くなるので普通はやってないと思う)
607デフォルトの名無しさん
2020/07/23(木) 20:39:00.72ID:QHkNbR5l 3. それなりに組織的にコーディングすると、どうしてもイベントハンドラで共通の関数を使いたい要求が出てくる。
しかしイベントハンドラだとthisがe.currentTargetによって潰されているので、共通関数をクロージャ(最終段はグローバル)で掴むしかないが、
クロージャはクローズ(追加不能だしコード配置が限定される=C++で言うクラスはクローズ、namespaceはオープンと同じ意味のクローズ)ので、
現実的には使いにくく、俺はイベントハンドラを集めたオブジェクト(その中に共通関数も入っている)をthisとしてcallし直して、
イベントハンドラ内ではthis.my_sub_function()で共通関数を呼べるようにしている。
この場合、thisは単なるオブジェクトなので、継承出来るのがいい。(共通関数の共通関数を__proto__側に追い出せる)
どうせthisが使い物にならない仕様なので他の連中も同様にやっているとは思う。
なお俺はjQuery不要派だがjQuery自体は初心者には分かりやすく偉大だと思っている。
実際にjQueryを使っていて問題ないのなら使うこと自体も悪いことではない。
ただしそれは世の中のマトモなサイト≒ガチのプログラマーが本気で書いたサイトではほぼ使われていない手法だということも理解しておいた方がいい。
といっても今の君には分からないだろうが、イベントハンドラ内でthisをe.currentTargetとして利用することはガチのサイトではほぼ無い、ということ。
今はどうせ何も分かってない状態なんだろうから、それならイベントハンドラ内ではthisを使わずe.currentTargetを使う癖を付けた方が多分いい。
それ以前にbubbleを使うようにした方がいいが。
しかしイベントハンドラだとthisがe.currentTargetによって潰されているので、共通関数をクロージャ(最終段はグローバル)で掴むしかないが、
クロージャはクローズ(追加不能だしコード配置が限定される=C++で言うクラスはクローズ、namespaceはオープンと同じ意味のクローズ)ので、
現実的には使いにくく、俺はイベントハンドラを集めたオブジェクト(その中に共通関数も入っている)をthisとしてcallし直して、
イベントハンドラ内ではthis.my_sub_function()で共通関数を呼べるようにしている。
この場合、thisは単なるオブジェクトなので、継承出来るのがいい。(共通関数の共通関数を__proto__側に追い出せる)
どうせthisが使い物にならない仕様なので他の連中も同様にやっているとは思う。
なお俺はjQuery不要派だがjQuery自体は初心者には分かりやすく偉大だと思っている。
実際にjQueryを使っていて問題ないのなら使うこと自体も悪いことではない。
ただしそれは世の中のマトモなサイト≒ガチのプログラマーが本気で書いたサイトではほぼ使われていない手法だということも理解しておいた方がいい。
といっても今の君には分からないだろうが、イベントハンドラ内でthisをe.currentTargetとして利用することはガチのサイトではほぼ無い、ということ。
今はどうせ何も分かってない状態なんだろうから、それならイベントハンドラ内ではthisを使わずe.currentTargetを使う癖を付けた方が多分いい。
それ以前にbubbleを使うようにした方がいいが。
608デフォルトの名無しさん
2020/07/23(木) 20:41:48.09ID:QHkNbR5l といっても多分さっぱり何がなにやら、だと思うが、そういうものだと思っておいてくれ。
質問の質問を受けていたら話が進まないのでそれは断る。
質問の質問を受けていたら話が進まないのでそれは断る。
609デフォルトの名無しさん
2020/07/23(木) 21:58:10.24ID:k24nyzXR >>606
> (なおjQueryでもbubble主体で書くことは可能ではあるが、それをやるとjQueryの意味がほぼ無くなるので普通はやってないと思う)
イベントのキャプチャフェーズとバブリングフェーズの話をしてるなら
jQueryはバブリングフェーズしか対応してません
jQueryの意味がなくなる?なぜですか?
そもそもIE8以前がキャプチャフェーズに対応してないので
それ以前からあるjQueryでは実装が不可能です。
(jQuery 4.0では実装されるらしい)
間違ったことを書かないでください
> (なおjQueryでもbubble主体で書くことは可能ではあるが、それをやるとjQueryの意味がほぼ無くなるので普通はやってないと思う)
イベントのキャプチャフェーズとバブリングフェーズの話をしてるなら
jQueryはバブリングフェーズしか対応してません
jQueryの意味がなくなる?なぜですか?
そもそもIE8以前がキャプチャフェーズに対応してないので
それ以前からあるjQueryでは実装が不可能です。
(jQuery 4.0では実装されるらしい)
間違ったことを書かないでください
610デフォルトの名無しさん
2020/07/23(木) 22:00:14.35ID:k24nyzXR >>607
> 現実的には使いにくく、俺はイベントハンドラを集めたオブジェクト(その中に共通関数も入っている)をthisとしてcallし直して、
> イベントハンドラ内ではthis.my_sub_function()で共通関数を呼べるようにしている。
> この場合、thisは単なるオブジェクトなので、継承出来るのがいい。(共通関数の共通関数を__proto__側に追い出せる)
やめましょう。無関係のイベントハンドラをまとめることは
単一責任の原則に違反しています。
> 現実的には使いにくく、俺はイベントハンドラを集めたオブジェクト(その中に共通関数も入っている)をthisとしてcallし直して、
> イベントハンドラ内ではthis.my_sub_function()で共通関数を呼べるようにしている。
> この場合、thisは単なるオブジェクトなので、継承出来るのがいい。(共通関数の共通関数を__proto__側に追い出せる)
やめましょう。無関係のイベントハンドラをまとめることは
単一責任の原則に違反しています。
611デフォルトの名無しさん
2020/07/23(木) 22:01:00.61ID:k24nyzXR >>607
> イベントハンドラ内でthisをe.currentTargetとして利用することはガチのサイトではほぼ無い、ということ。
いいえ。殆どがthisを使っています。e.currentTargetは冗長なだけです。
> イベントハンドラ内でthisをe.currentTargetとして利用することはガチのサイトではほぼ無い、ということ。
いいえ。殆どがthisを使っています。e.currentTargetは冗長なだけです。
612デフォルトの名無しさん
2020/07/23(木) 22:41:43.25ID:k24nyzXR >>606
> DOM APIのthisがe.currentTargetを指すのはそもそもJava用の仕様、
> つまりJavaでもクライアントスクリプトを書けるようにする為の仕様らしい。(とここ5chで聞いた)
逆です。Javaではe.currentTargetを使い、thisは使えません。
(当時の)Javaでは言語仕様上の制限でイベントハンドラとして関数を使用することはできません。
イベントハンドラはオブジェクトである必要があります。
イベントハンドラ自体がオブジェクトであるため、thisはイベントハンドラオブジェクトになります。
そのためJavaでthisは使えません。
また昔のIEはaddEventListnerがなくattachEventを使いますが。
attachEventの場合thisはwindowでありe.currentTargetではありません。
つまり初期のIEのDOM APIはもちろんJavaでも使えますが
event.srcElement(e.currentTarget相当)しか実装されてないということです。
thisがe.currentTargetなのはJavaScriptのために作られた仕様です。
> DOM APIのthisがe.currentTargetを指すのはそもそもJava用の仕様、
> つまりJavaでもクライアントスクリプトを書けるようにする為の仕様らしい。(とここ5chで聞いた)
逆です。Javaではe.currentTargetを使い、thisは使えません。
(当時の)Javaでは言語仕様上の制限でイベントハンドラとして関数を使用することはできません。
イベントハンドラはオブジェクトである必要があります。
イベントハンドラ自体がオブジェクトであるため、thisはイベントハンドラオブジェクトになります。
そのためJavaでthisは使えません。
また昔のIEはaddEventListnerがなくattachEventを使いますが。
attachEventの場合thisはwindowでありe.currentTargetではありません。
つまり初期のIEのDOM APIはもちろんJavaでも使えますが
event.srcElement(e.currentTarget相当)しか実装されてないということです。
thisがe.currentTargetなのはJavaScriptのために作られた仕様です。
613デフォルトの名無しさん
2020/07/23(木) 22:44:12.81ID:k24nyzXR >>606
> JavaScriptにおいてはe.targetを全面的に使うのが正しい。
いいえ。e.targetは廃止されてます。
https://developer.mozilla.org/ja/docs/Web/API/Event/target
わざと正反対のことを書いてるんですかね?
> JavaScriptにおいてはe.targetを全面的に使うのが正しい。
いいえ。e.targetは廃止されてます。
https://developer.mozilla.org/ja/docs/Web/API/Event/target
わざと正反対のことを書いてるんですかね?
614デフォルトの名無しさん
2020/07/23(木) 22:47:04.66ID:QHkNbR5l >>609
キャプチャフェーズの話はしてない。
なお俺の判断では、キャプチャフェーズは余程のパッチ当て以外では使うべきではない。
あれは使わないでも十分組めるし、そもそもキャプチャフェーズを使わなければならないシチュエーションがまるでない。
だから俺は何であの仕様が入れられたのか不明なのだが、君はそれが分かるか?
具体的に、キャプチャフェーズのユースケースを知りたい。
> jQueryの意味がなくなる?なぜですか?
jQueryは基本的に
queryしたElementに何か(この場合はイベント追加)するのを宣言スタイルで短く分かりやすく書けるのが売りだろ。
バブル主体で書くとそもそもqueryしないから、jQueryを使う意味がないんだよ。
それはやれば分かる。分からないのはやってないからでしかない。
> やめましょう。無関係のイベントハンドラをまとめることは
> 単一責任の原則に違反しています。
無関係ではないんだよ。
そしてその考え方がJava的オブジェクト指向の限界であり、JavaでGUIを誰もやらない理由だよ。
いずれにしても、JavaのGUIなんてキングオブゴミだし、GUIに関してはJava的オブジェクト指向は一旦捨てた方がいい。
実際、.NETにしても、データはバインディングでグローバルストア方式になってるだろ。
(末端のオブジェクトにデータを持たせている風に見せているが、
現実問題としてそれだと状態のセーブが出来なくて(やりにくくて)いきなり詰むから、実際はバインディングでゴニョゴニョ出来るようにしている)
だからJava的な、末端のオブジェクトにデータもイベント関数も全部持たせる、というのがGUIに絶望的に向いてないんだよ。
だからJavaではろくなGUIが作れない、というよりは無駄に苦労するので誰もやらない。その結果が今だ。
> いいえ。殆どがthisを使っています。e.currentTargetは冗長なだけです。
それは君がbubbleを使ってないから。jQueryもだがフレームワーク等は仕様はDOMAPIに合わせているだろうけど、
実際にbubbleの場合はe.currentTargetなんて使い物にならないから当然thisも使わない。
これもやれば分かるだけのこと。君はやってないだけ。
キャプチャフェーズの話はしてない。
なお俺の判断では、キャプチャフェーズは余程のパッチ当て以外では使うべきではない。
あれは使わないでも十分組めるし、そもそもキャプチャフェーズを使わなければならないシチュエーションがまるでない。
だから俺は何であの仕様が入れられたのか不明なのだが、君はそれが分かるか?
具体的に、キャプチャフェーズのユースケースを知りたい。
> jQueryの意味がなくなる?なぜですか?
jQueryは基本的に
queryしたElementに何か(この場合はイベント追加)するのを宣言スタイルで短く分かりやすく書けるのが売りだろ。
バブル主体で書くとそもそもqueryしないから、jQueryを使う意味がないんだよ。
それはやれば分かる。分からないのはやってないからでしかない。
> やめましょう。無関係のイベントハンドラをまとめることは
> 単一責任の原則に違反しています。
無関係ではないんだよ。
そしてその考え方がJava的オブジェクト指向の限界であり、JavaでGUIを誰もやらない理由だよ。
いずれにしても、JavaのGUIなんてキングオブゴミだし、GUIに関してはJava的オブジェクト指向は一旦捨てた方がいい。
実際、.NETにしても、データはバインディングでグローバルストア方式になってるだろ。
(末端のオブジェクトにデータを持たせている風に見せているが、
現実問題としてそれだと状態のセーブが出来なくて(やりにくくて)いきなり詰むから、実際はバインディングでゴニョゴニョ出来るようにしている)
だからJava的な、末端のオブジェクトにデータもイベント関数も全部持たせる、というのがGUIに絶望的に向いてないんだよ。
だからJavaではろくなGUIが作れない、というよりは無駄に苦労するので誰もやらない。その結果が今だ。
> いいえ。殆どがthisを使っています。e.currentTargetは冗長なだけです。
それは君がbubbleを使ってないから。jQueryもだがフレームワーク等は仕様はDOMAPIに合わせているだろうけど、
実際にbubbleの場合はe.currentTargetなんて使い物にならないから当然thisも使わない。
これもやれば分かるだけのこと。君はやってないだけ。
615デフォルトの名無しさん
2020/07/23(木) 22:49:01.44ID:k24nyzXR616デフォルトの名無しさん
2020/07/23(木) 22:49:21.91ID:k24nyzXR ×そういう意味ですか?
○どういう意味ですか?
○どういう意味ですか?
617デフォルトの名無しさん
2020/07/23(木) 22:50:10.57ID:k24nyzXR >それは君がbubbleを使ってないから。
bubbleを使うとやらのコードを書いてください
bubbleを使うとやらのコードを書いてください
618デフォルトの名無しさん
2020/07/23(木) 22:53:40.02ID:k24nyzXR Description: The current DOM element within the event 「bubbling」 phase.
https://api.jquery.com/event.currentTarget/
https://api.jquery.com/event.currentTarget/
619デフォルトの名無しさん
2020/07/23(木) 22:53:41.19ID:QHkNbR5l >>612
いや俺はthisがオブジェクトそのものだと聞いたが、
まあJavaの仕様については俺は詳しくないし、いずれにしてもスレチだし、この話は止めよう。
>>613
それは初耳だが、
LS見た限り当然載っているから移動されただけではないか?
そのページのLSの所押すと割と丁度いい場所に飛ぶから見てみればいい。
やれば分かるが、バブルで組んだ場合にe.target無しでは組めない。
廃止されるにしても、名前が変わって何かが定義されるとかであって、丸々捨てられることはないよ。
そしてbubbleを使わずに一々全Elementにイベントを付けていくのは完全に旧式であって、
マトモなサイトでは誰もそんなことやってない。
それも確認してみればいい。
いや俺はthisがオブジェクトそのものだと聞いたが、
まあJavaの仕様については俺は詳しくないし、いずれにしてもスレチだし、この話は止めよう。
>>613
それは初耳だが、
LS見た限り当然載っているから移動されただけではないか?
そのページのLSの所押すと割と丁度いい場所に飛ぶから見てみればいい。
やれば分かるが、バブルで組んだ場合にe.target無しでは組めない。
廃止されるにしても、名前が変わって何かが定義されるとかであって、丸々捨てられることはないよ。
そしてbubbleを使わずに一々全Elementにイベントを付けていくのは完全に旧式であって、
マトモなサイトでは誰もそんなことやってない。
それも確認してみればいい。
620デフォルトの名無しさん
2020/07/23(木) 22:54:31.55ID:k24nyzXR jQuery event.currentTarget
日本語訳 説明:イベントバブリングフェーズ内の現在のDOM要素。
日本語訳 説明:イベントバブリングフェーズ内の現在のDOM要素。
621デフォルトの名無しさん
2020/07/23(木) 22:55:20.17ID:k24nyzXR622デフォルトの名無しさん
2020/07/23(木) 22:57:37.04ID:k24nyzXR >>619
> そしてbubbleを使わずに一々全Elementにイベントを付けていくのは完全に旧式であって、
jQueryでは全Elementにイベントハンドラを使えずに、
ocumentエレメントにイベントハンドラを付ける場合このように書きます。
$(document).on('click', 'a', function() {
$(this).css("background": "red");
});
知ってましたか?w
> そしてbubbleを使わずに一々全Elementにイベントを付けていくのは完全に旧式であって、
jQueryでは全Elementにイベントハンドラを使えずに、
ocumentエレメントにイベントハンドラを付ける場合このように書きます。
$(document).on('click', 'a', function() {
$(this).css("background": "red");
});
知ってましたか?w
623デフォルトの名無しさん
2020/07/23(木) 23:16:41.69ID:k24nyzXR https://jsfiddle.net/m8q15376/
例えばこの2つのコードはイベントハンドラをつけてるところは違いますが
同じよう動作をします。thisが使えない?何の話でしょうかねw
$("#id1").on('click', 'a', function() {
$(this).css("background", "red");
});
$("#id2 a").on('click', function() {
$(this).css("background", "red");
});
例えばこの2つのコードはイベントハンドラをつけてるところは違いますが
同じよう動作をします。thisが使えない?何の話でしょうかねw
$("#id1").on('click', 'a', function() {
$(this).css("background", "red");
});
$("#id2 a").on('click', function() {
$(this).css("background", "red");
});
624デフォルトの名無しさん
2020/07/23(木) 23:18:15.34ID:QHkNbR5l >>621
君と話が通じないのは君がbubble主体で組んだことがないからだよ。
ただし、bubbleの重要性に触れた『初心者向け』サイトは皆無で、俺が知ってるのはuhyohyoだけ。
気になるならそこでも読むんだね。
或いはそこら辺のまともなサイト、ガチの商用サイトだとbubbleを使ってない方が珍しい(と思いたい)から、見てみるとか。
ただし日本のサイトは割とまじで糞で、20年前と同じですねー、ってのも普通にあるからそういうところは駄目だが。
(ここ5chもそうだし)
ちなみに2度目だが、フェースの話はしてない。
イベントがバブルするのを「イベントバブル」と言うんだよ。
これはWPF等でも使われているからJavaScriptのローカル用語ではなくてプログラミング用語だ。
(といっても俺が知っている限りイベントバブルを最初に実装したフレームワークはHTMLで、
それらをWPF等も採り入れたから当然同じ用語になっているだけだが)
そしてそれをbubbleと(短く短くとうるさいお前ら用に)略して言っているだけ。
もう一度言うが、フェーズの話はしてないし、そもそも既に書いたように俺はキャプチャフェーズの存在価値が分からない。
今のところの見方では、あれは不要な仕様だと思う。
jQueryでも対応してないのなら、実際それで困ることはないからだろ。
>>622
知ってる。そしてそれだとjQueryを使う意味が無い=生のDOMAPIでも同様に書けるだろ
だからみんなjQueryを捨て始めてるだけ。
勿論君のようにjQueryが無いと死んじゃう人がそれに抗っているのも知ってる。
君と話が通じないのは君がbubble主体で組んだことがないからだよ。
ただし、bubbleの重要性に触れた『初心者向け』サイトは皆無で、俺が知ってるのはuhyohyoだけ。
気になるならそこでも読むんだね。
或いはそこら辺のまともなサイト、ガチの商用サイトだとbubbleを使ってない方が珍しい(と思いたい)から、見てみるとか。
ただし日本のサイトは割とまじで糞で、20年前と同じですねー、ってのも普通にあるからそういうところは駄目だが。
(ここ5chもそうだし)
ちなみに2度目だが、フェースの話はしてない。
イベントがバブルするのを「イベントバブル」と言うんだよ。
これはWPF等でも使われているからJavaScriptのローカル用語ではなくてプログラミング用語だ。
(といっても俺が知っている限りイベントバブルを最初に実装したフレームワークはHTMLで、
それらをWPF等も採り入れたから当然同じ用語になっているだけだが)
そしてそれをbubbleと(短く短くとうるさいお前ら用に)略して言っているだけ。
もう一度言うが、フェーズの話はしてないし、そもそも既に書いたように俺はキャプチャフェーズの存在価値が分からない。
今のところの見方では、あれは不要な仕様だと思う。
jQueryでも対応してないのなら、実際それで困ることはないからだろ。
>>622
知ってる。そしてそれだとjQueryを使う意味が無い=生のDOMAPIでも同様に書けるだろ
だからみんなjQueryを捨て始めてるだけ。
勿論君のようにjQueryが無いと死んじゃう人がそれに抗っているのも知ってる。
625デフォルトの名無しさん
2020/07/23(木) 23:21:08.33ID:k24nyzXR もうわかりましたね? ID:QHkNbR5l はイベントデリゲーションのことを
バブルなんて言ってるわけです(笑)
https://developer.mozilla.org/ja/docs/Web/API/Event/target
> event.target プロパティは、イベントデリゲーションを実装するために使用できます。
所詮オレオレ用語を使うレベルなんですよ
バブルなんて言ってるわけです(笑)
https://developer.mozilla.org/ja/docs/Web/API/Event/target
> event.target プロパティは、イベントデリゲーションを実装するために使用できます。
所詮オレオレ用語を使うレベルなんですよ
626デフォルトの名無しさん
2020/07/23(木) 23:22:10.11ID:QHkNbR5l627デフォルトの名無しさん
2020/07/23(木) 23:22:48.51ID:k24nyzXR >>624
> 知ってる。そしてそれだとjQueryを使う意味が無い=生のDOMAPIでも同様に書けるだろ
では生のDOM APIを使ってe.targetなしで書いてみてください。
できますか? jQueryはe.targetなしで書きました。
> 知ってる。そしてそれだとjQueryを使う意味が無い=生のDOMAPIでも同様に書けるだろ
では生のDOM APIを使ってe.targetなしで書いてみてください。
できますか? jQueryはe.targetなしで書きました。
628デフォルトの名無しさん
2020/07/23(木) 23:23:26.39ID:k24nyzXR629デフォルトの名無しさん
2020/07/23(木) 23:24:31.81ID:k24nyzXR630デフォルトの名無しさん
2020/07/23(木) 23:28:46.58ID:QHkNbR5l >>625
まあ君との話はもうする価値がないから終わりにするけど、
イベントバブルはオレオレ用語ではないと思うよ。
イベントデリゲーションってのは確かにそこにあるが、初めて聞いたが。
e.targetについては、
> 複数の要素に同じイベントハンドラを割り当てて、どれかでイベントがあったときに何かさせたいような場合、e.target はとてつもなく有用なものです。
> 複数の要素に同じイベントハンドラーを割り当てて、どれかでイベントがあったときに何かさせたいような場合、e.target はとてつもなく有用なものです。
と、重要だからか?まじで2回書いてあるし、それが廃止とか使用禁止とかにはならないよ。
https://developer.mozilla.org/ja/docs/Learn/JavaScript/Building_blocks/Events
まあ君との話はもうする価値がないから終わりにするけど、
イベントバブルはオレオレ用語ではないと思うよ。
イベントデリゲーションってのは確かにそこにあるが、初めて聞いたが。
e.targetについては、
> 複数の要素に同じイベントハンドラを割り当てて、どれかでイベントがあったときに何かさせたいような場合、e.target はとてつもなく有用なものです。
> 複数の要素に同じイベントハンドラーを割り当てて、どれかでイベントがあったときに何かさせたいような場合、e.target はとてつもなく有用なものです。
と、重要だからか?まじで2回書いてあるし、それが廃止とか使用禁止とかにはならないよ。
https://developer.mozilla.org/ja/docs/Learn/JavaScript/Building_blocks/Events
631デフォルトの名無しさん
2020/07/23(木) 23:28:53.91ID:k24nyzXR > イベントバブルを最初に実装したフレームワークはHTMLで、
笑うしかないわw HTMLがフレームワークとかw
笑うしかないわw HTMLがフレームワークとかw
632デフォルトの名無しさん
2020/07/23(木) 23:29:21.73ID:k24nyzXR > イベントデリゲーションってのは確かにそこにあるが、初めて聞いたが。
はい、初めて聞くレベル
はい、初めて聞くレベル
633デフォルトの名無しさん
2020/07/23(木) 23:29:24.10ID:HWiYfbuZ >>613
そのMDNの廃止されたって言うのは以前の仕様書が廃止って意味じゃないの?
そのMDNの廃止されたって言うのは以前の仕様書が廃止って意味じゃないの?
634デフォルトの名無しさん
2020/07/23(木) 23:30:10.44ID:k24nyzXR > e.targetについては、
> 複数の要素に同じイベントハンドラを割り当てて、どれかでイベントがあったときに何かさせたいような場合、e.target はとてつもなく有用なものです。
↓このコードが複数の要素に同じイベントハンドラを割り当てて、どれかでイベントがあったときに何かさせているコード
https://jsfiddle.net/m8q15376/
$("#id1").on('click', 'a', function() {
$(this).css("background", "red");
});
> 複数の要素に同じイベントハンドラを割り当てて、どれかでイベントがあったときに何かさせたいような場合、e.target はとてつもなく有用なものです。
↓このコードが複数の要素に同じイベントハンドラを割り当てて、どれかでイベントがあったときに何かさせているコード
https://jsfiddle.net/m8q15376/
$("#id1").on('click', 'a', function() {
$(this).css("background", "red");
});
635デフォルトの名無しさん
2020/07/23(木) 23:56:14.14ID:k24nyzXR まとめ
こいつはイベントデリゲーション(複数の要素に同じイベントハンドラを割り当てるコード)を
jQueryで書いているコードを見たことがない、もしくは見たことあっても気づかないで
jQueryでもDOM APIと同じように書くしかないはずだ!だからjQueryを使う意味がない!と考えていたようだが
そのイベントデリゲーションこそjQueryでシンプルに書けるコードの一つだったという話です。
こいつはイベントデリゲーション(複数の要素に同じイベントハンドラを割り当てるコード)を
jQueryで書いているコードを見たことがない、もしくは見たことあっても気づかないで
jQueryでもDOM APIと同じように書くしかないはずだ!だからjQueryを使う意味がない!と考えていたようだが
そのイベントデリゲーションこそjQueryでシンプルに書けるコードの一つだったという話です。
636デフォルトの名無しさん
2020/07/24(金) 00:01:31.32ID:2LubhzPR >>632
というかね、「イベントバブル」をオレオレ用語だと噛みついてくる時点でお前はどうかしてる。
JavaScript使ってて今まで聞いたことがないってのは本当に酷い。
MDNにも「イベントのバブリング」とは書いてある。
> https://developer.mozilla.org/ja/docs/Web/Guide/Events/Creating_and_triggering_events
uhyohyoでも「イベントバブリング」って言ってる。
> https://uhyohyo.net/javascript/3_3.html
-ing形だから通じないって事も無いだろうし、そもそもbubbleフェーズを表すと勘違いしても大体通じる内容でしかない。
そこで噛みついてくる意味が分からん。
JavaScriptが世のGUIを席巻しつつあるのは、イベントバブルの功績が大きい。
これがあるのと無いのとでは、GUIの組みやすさの次元が違うんだよ。
だから.NETもWPFで、GTKでもGTK+3から採用されてる。(Qtは知らん)
それを全く使わずにJavaScriptのGUIを語るのは完全に間違ってる。
そこら辺がjQueryしか出来ない人(つまり君とか)の問題だと思うよ。
jQueryしか出来ない人が馬鹿にされているのは君も知っているだろ?そういうことだよ。
というかね、「イベントバブル」をオレオレ用語だと噛みついてくる時点でお前はどうかしてる。
JavaScript使ってて今まで聞いたことがないってのは本当に酷い。
MDNにも「イベントのバブリング」とは書いてある。
> https://developer.mozilla.org/ja/docs/Web/Guide/Events/Creating_and_triggering_events
uhyohyoでも「イベントバブリング」って言ってる。
> https://uhyohyo.net/javascript/3_3.html
-ing形だから通じないって事も無いだろうし、そもそもbubbleフェーズを表すと勘違いしても大体通じる内容でしかない。
そこで噛みついてくる意味が分からん。
JavaScriptが世のGUIを席巻しつつあるのは、イベントバブルの功績が大きい。
これがあるのと無いのとでは、GUIの組みやすさの次元が違うんだよ。
だから.NETもWPFで、GTKでもGTK+3から採用されてる。(Qtは知らん)
それを全く使わずにJavaScriptのGUIを語るのは完全に間違ってる。
そこら辺がjQueryしか出来ない人(つまり君とか)の問題だと思うよ。
jQueryしか出来ない人が馬鹿にされているのは君も知っているだろ?そういうことだよ。
637デフォルトの名無しさん
2020/07/24(金) 00:22:53.71ID:fMjVnhWI お前のオレオレ用語っていうのは「バブル主体」だアホめ
なんだよバブル主体って(笑)
なんだよバブル主体って(笑)
638デフォルトの名無しさん
2020/07/24(金) 00:24:19.77ID:fMjVnhWI >>636
> JavaScriptが世のGUIを席巻しつつあるのは、イベントバブルの功績が大きい。
だから、イベントバブルじゃなくてイベントデリゲーションな(笑)
何がオレオレ用語なのかわかってない。
用語の使い方を間違ってんだよお前は。
jQueryはイベントバブルを使ってる
> JavaScriptが世のGUIを席巻しつつあるのは、イベントバブルの功績が大きい。
だから、イベントバブルじゃなくてイベントデリゲーションな(笑)
何がオレオレ用語なのかわかってない。
用語の使い方を間違ってんだよお前は。
jQueryはイベントバブルを使ってる
639デフォルトの名無しさん
2020/07/24(金) 00:25:21.34ID:fMjVnhWI 何度も言うがjQueryを使うということは
イベントバブルを使ってるということだ
イベントバブルを使ってるということだ
640デフォルトの名無しさん
2020/07/24(金) 00:28:52.61ID:fMjVnhWI ちなみにイベントデリゲーションという用語は
MDNでも使われているが、jQueryが最初に使った用語なんじゃないかと思ってる。
もともとはjQueryでイベントデリゲーションを使う時
delegateというメソッドを使っていたから。それが廃止になりonに統一された。
onに統一された結果、jQueryでイベントデレゲーションを使ったコードと
使ってないコードの差異が減って、e.targetを使わずにthisでコードが書けるようになった。
jQueryでイベントデレゲーションを使うのは、DOM APIを使うよりも
格段にシンプルに書けるようになっている
無関係のイベントハンドラを統合するという単一責任の原則に反するコードを書くことなく
イベントデレゲーションを使うことが可能になっている。
MDNでも使われているが、jQueryが最初に使った用語なんじゃないかと思ってる。
もともとはjQueryでイベントデリゲーションを使う時
delegateというメソッドを使っていたから。それが廃止になりonに統一された。
onに統一された結果、jQueryでイベントデレゲーションを使ったコードと
使ってないコードの差異が減って、e.targetを使わずにthisでコードが書けるようになった。
jQueryでイベントデレゲーションを使うのは、DOM APIを使うよりも
格段にシンプルに書けるようになっている
無関係のイベントハンドラを統合するという単一責任の原則に反するコードを書くことなく
イベントデレゲーションを使うことが可能になっている。
641デフォルトの名無しさん
2020/07/24(金) 00:33:37.06ID:2LubhzPR >>637-639
半島に帰れ
半島に帰れ
642デフォルトの名無しさん
2020/07/24(金) 01:22:11.42ID:2LubhzPR >>626
訂正、>>623でもバブルを利用しているようだ。
jQueryはこの形式だとDelegated event handlers として扱われ、
on時点でサブクエリして一致した子要素に付けるのではなく、
内部的にバブルしてきたイベントを使い、実行時にクエリして一致を確かめるようだ。(後半部は予想、実装依存)
https://api.jquery.com/on/
だから確かにバブルを利用してはいるが、これだともっさり遅くはなる。(とはいえGUIの場合は大抵問題にはならない)
jQueryは使ってないし今後も使う予定もないので仕様には詳しくなく、見た目で判断してしまった。
なるほど何だかんだで上手く出来てはいる。
が、まあ、いずれにしてもこれをDOMAPIだけで書くのも別段苦労しないし、
jQuery内部でe.targetを使っているだけで、e.targetが無ければjQuery自体が組めないだけでしかない。
>>640
イベントデリゲーションの方がかなりオレオレ用語だと思うが。
確かにMDNには書いてあるが、俺は今まで聞いたこともなかったし、そもそもそれを「デリゲーション(キリッ」とかいうのもどうかしてると思うが。
OOPで言う委譲に当たるから「デリゲーション」なんだろうが、それはOOPで言う「継承か委譲か」、という話とは全然違っていて、
単に親要素でしかなく、子要素とは何の関わりもない。(一応包含してはいるが)
だから無理やりOOP的な解釈をすれば「デリゲート」しかないのだろうけど、
それは、世の中の全てを無理矢理OOPで解釈するJava脳みたいな感覚を受け、
Java以外で普通にOOPを分かっている奴からしたら相当気持ち悪い使い方だし、実際に流行ってもないだろ。
これが気持ち悪いと思わないのは君がOOPを理解してないからだよ。
ただし俺はGUI自体がOOPにフィットしないと思っているから、GUIしかやらないのなら理解している必要はないとも思うけども。
そして君は都合の悪い>>633は無視なのか?
既に言ったが、現在の状況でe.targetが無くなることはない。
ただ、あの辺デタラメに拡張して仕様がグダグダなので、整理しろよな、とは思うが。
訂正、>>623でもバブルを利用しているようだ。
jQueryはこの形式だとDelegated event handlers として扱われ、
on時点でサブクエリして一致した子要素に付けるのではなく、
内部的にバブルしてきたイベントを使い、実行時にクエリして一致を確かめるようだ。(後半部は予想、実装依存)
https://api.jquery.com/on/
だから確かにバブルを利用してはいるが、これだともっさり遅くはなる。(とはいえGUIの場合は大抵問題にはならない)
jQueryは使ってないし今後も使う予定もないので仕様には詳しくなく、見た目で判断してしまった。
なるほど何だかんだで上手く出来てはいる。
が、まあ、いずれにしてもこれをDOMAPIだけで書くのも別段苦労しないし、
jQuery内部でe.targetを使っているだけで、e.targetが無ければjQuery自体が組めないだけでしかない。
>>640
イベントデリゲーションの方がかなりオレオレ用語だと思うが。
確かにMDNには書いてあるが、俺は今まで聞いたこともなかったし、そもそもそれを「デリゲーション(キリッ」とかいうのもどうかしてると思うが。
OOPで言う委譲に当たるから「デリゲーション」なんだろうが、それはOOPで言う「継承か委譲か」、という話とは全然違っていて、
単に親要素でしかなく、子要素とは何の関わりもない。(一応包含してはいるが)
だから無理やりOOP的な解釈をすれば「デリゲート」しかないのだろうけど、
それは、世の中の全てを無理矢理OOPで解釈するJava脳みたいな感覚を受け、
Java以外で普通にOOPを分かっている奴からしたら相当気持ち悪い使い方だし、実際に流行ってもないだろ。
これが気持ち悪いと思わないのは君がOOPを理解してないからだよ。
ただし俺はGUI自体がOOPにフィットしないと思っているから、GUIしかやらないのなら理解している必要はないとも思うけども。
そして君は都合の悪い>>633は無視なのか?
既に言ったが、現在の状況でe.targetが無くなることはない。
ただ、あの辺デタラメに拡張して仕様がグダグダなので、整理しろよな、とは思うが。
643デフォルトの名無しさん
2020/07/24(金) 01:48:12.97ID:2LubhzPR ちなみにgoogle、
イベントバブル 約 22,500,000 件 (0.43 秒)
イベントデリゲーション 約 23,600 件 (0.28 秒)
イベントバブル 約 22,500,000 件 (0.43 秒)
イベントデリゲーション 約 23,600 件 (0.28 秒)
644デフォルトの名無しさん
2020/07/24(金) 06:57:14.92ID:9v9Epd9J バブリングフェーズとイベントデリゲーションはバスタブとミカンくらい意味が違うがおんなじもんだと思ってたわけ?w
バブリングフェーズはイベント伝搬のステージのことで、
div
a
a
という構造ならhtmlからdiv→aと伝搬してくるのがキャプチヤリングフェーズ。
その後a→divとhtmlまで戻っていくのがバブリングフェーズ。
イベントデリゲーションは2つのaにイベントパンドラ設定するよりdiv1つに設定してaのイベントまとめてハンドルしてもらいましょうというやり方。
a(子)のイベントハンドリングをdiv(親または祖先)に委譲(delegate)するからイベントデリゲーション。
ちんちんとマンチェスターユナイテッドくらい意味が違うけどおんなじもんだと思ってたわけ?w
バブリングフェーズはイベント伝搬のステージのことで、
div
a
a
という構造ならhtmlからdiv→aと伝搬してくるのがキャプチヤリングフェーズ。
その後a→divとhtmlまで戻っていくのがバブリングフェーズ。
イベントデリゲーションは2つのaにイベントパンドラ設定するよりdiv1つに設定してaのイベントまとめてハンドルしてもらいましょうというやり方。
a(子)のイベントハンドリングをdiv(親または祖先)に委譲(delegate)するからイベントデリゲーション。
ちんちんとマンチェスターユナイテッドくらい意味が違うけどおんなじもんだと思ってたわけ?w
645デフォルトの名無しさん
2020/07/24(金) 07:07:22.97ID:fMjVnhWI646デフォルトの名無しさん
2020/07/24(金) 07:07:57.79ID:fMjVnhWI647デフォルトの名無しさん
2020/07/24(金) 07:09:14.13ID:fMjVnhWI648デフォルトの名無しさん
2020/07/24(金) 07:10:55.78ID:fMjVnhWI 結局の所 >>635 の まとめで書いたとおり
こいつはイベントデリゲーション(複数の要素に同じイベントハンドラを割り当てるコード)を
jQueryで書いているコードを見たことがない、もしくは見たことあっても気づかないで
jQueryでもDOM APIと同じように書くしかないはずだ!だからjQueryを使う意味がない!と考えていたようだが
そのイベントデリゲーションこそjQueryでシンプルに書けるコードの一つだったという話です。
そのイベントデリゲーションこそjQueryでシンプルに書けるコードの一つだったという話です。
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
こいつはイベントデリゲーション(複数の要素に同じイベントハンドラを割り当てるコード)を
jQueryで書いているコードを見たことがない、もしくは見たことあっても気づかないで
jQueryでもDOM APIと同じように書くしかないはずだ!だからjQueryを使う意味がない!と考えていたようだが
そのイベントデリゲーションこそjQueryでシンプルに書けるコードの一つだったという話です。
そのイベントデリゲーションこそjQueryでシンプルに書けるコードの一つだったという話です。
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
649デフォルトの名無しさん
2020/07/24(金) 07:27:42.03ID:fMjVnhWI650デフォルトの名無しさん
2020/07/24(金) 08:10:38.59ID:2LubhzPR >>644
お前が日本語が出来なくていろいろ勘違いしてるだけだろ。
まず示したように、「イベントデリゲーション」なんて言葉は誰も使ってないから止めとけ。
イベントバブルの説明に必ず出てくる言葉なら、使用頻度=ヒットページ数も1:1になるはずであって、
約1000:1ってのは誰も使ってないって事でしかない。
> バブリングフェーズとイベントデリゲーションはバスタブとミカンくらい意味が違うがおんなじもんだと思ってたわけ?w
俺は同じ物だとは一言も言ってない。それを勝手に誤解しているのはお前の日本語が韓国人レベルだからだ。
ただ、これらは表裏一体であって、イベントがバブルしなければ纏めるも何もないので、
お前が思っているほど区別する意味もない。
お前みたいな文系馬鹿はやたら細かく区別して意味無くドヤる傾向があるが、プログラミングってのはそもそもそういうものではない。
実際問題として、イベントバブルを説明する際に、
確かに「バブルしてくるイベントを親で捕らえて纏めて処理する」事を示す名詞が欲しい、というのはあるだろう。
ただ、誰もそこで「イベントデリゲーション」なんて言葉を使ってないから1000:1の使用頻度になってる。
実際は、「バブルしてくるイベントを親で捕らえて」とそのまま言っているのだと思う。
ただそもそもバブルさせる=親で捕らえて纏めて処理する大前提だから、それ含めてイベントバブルでも大して問題ないんだよ。
お前が日本語が出来なくていろいろ勘違いしてるだけだろ。
まず示したように、「イベントデリゲーション」なんて言葉は誰も使ってないから止めとけ。
イベントバブルの説明に必ず出てくる言葉なら、使用頻度=ヒットページ数も1:1になるはずであって、
約1000:1ってのは誰も使ってないって事でしかない。
> バブリングフェーズとイベントデリゲーションはバスタブとミカンくらい意味が違うがおんなじもんだと思ってたわけ?w
俺は同じ物だとは一言も言ってない。それを勝手に誤解しているのはお前の日本語が韓国人レベルだからだ。
ただ、これらは表裏一体であって、イベントがバブルしなければ纏めるも何もないので、
お前が思っているほど区別する意味もない。
お前みたいな文系馬鹿はやたら細かく区別して意味無くドヤる傾向があるが、プログラミングってのはそもそもそういうものではない。
実際問題として、イベントバブルを説明する際に、
確かに「バブルしてくるイベントを親で捕らえて纏めて処理する」事を示す名詞が欲しい、というのはあるだろう。
ただ、誰もそこで「イベントデリゲーション」なんて言葉を使ってないから1000:1の使用頻度になってる。
実際は、「バブルしてくるイベントを親で捕らえて」とそのまま言っているのだと思う。
ただそもそもバブルさせる=親で捕らえて纏めて処理する大前提だから、それ含めてイベントバブルでも大して問題ないんだよ。
651デフォルトの名無しさん
2020/07/24(金) 08:10:58.84ID:2LubhzPR 同様にお前が無駄に拘っているのが以下だが、
> > イベントバブルを最初に実装したフレームワークはHTMLで、
> 笑うしかないわw HTMLがフレームワークとかw (>>631)
HTML/CSS/JavaScriptはほぼ常にセットで使われていて、どれだと区別する意味はないし、
確かに厳密にはどれでもないからWebAPIとか別括りにされてるが、そこに拘る意味もない。
俺は「イベントバブルを最初に実装した『フレームワークが』がHTMLだと言った。
お前的には「プラットフォーム」か、または別用語が適切なのかもしれんが、
いずれにしても言葉というのはコミュニケーションの手段であって、つまり通じるかどうかが最重要であって、
明らかに通じているのに揚げ足取りしているつもり?でドヤって来るのも頭おかしいとしか思えないが。
(オレオレ用語を使うなってのは「通じないから使うな」ということであって、オレオレ用語を使うこと自体が悪いというわけではない)
お前いつものjQuery厨か?
ならお前はここ2〜3年、まるで成長してないな。
>>649
むしろお前がそれを書けないと言っているに近いが、それをお前は認めるか?
日本語が通じない馬鹿なお前の為に敢えて言い直すと、
お前が「僕は書けませんから書いてみてください」と言うのなら書くが、
あまりに簡単すぎてお前の馬鹿さが際だつだけだぞ。
いずれにしても、脱jQueryなんてのが出てくるのはjQueryを使う意味がなくなりつつあるからであって、
お前がそれを気に入らなくても、それは事実として認めるしかないし、
実際にjQueryから輸入された仕様もあるのだからjQuery自体が糞だったわけでもないんだよ。
ただ、役割を終えつつある、というだけの話であってさ。
> > イベントバブルを最初に実装したフレームワークはHTMLで、
> 笑うしかないわw HTMLがフレームワークとかw (>>631)
HTML/CSS/JavaScriptはほぼ常にセットで使われていて、どれだと区別する意味はないし、
確かに厳密にはどれでもないからWebAPIとか別括りにされてるが、そこに拘る意味もない。
俺は「イベントバブルを最初に実装した『フレームワークが』がHTMLだと言った。
お前的には「プラットフォーム」か、または別用語が適切なのかもしれんが、
いずれにしても言葉というのはコミュニケーションの手段であって、つまり通じるかどうかが最重要であって、
明らかに通じているのに揚げ足取りしているつもり?でドヤって来るのも頭おかしいとしか思えないが。
(オレオレ用語を使うなってのは「通じないから使うな」ということであって、オレオレ用語を使うこと自体が悪いというわけではない)
お前いつものjQuery厨か?
ならお前はここ2〜3年、まるで成長してないな。
>>649
むしろお前がそれを書けないと言っているに近いが、それをお前は認めるか?
日本語が通じない馬鹿なお前の為に敢えて言い直すと、
お前が「僕は書けませんから書いてみてください」と言うのなら書くが、
あまりに簡単すぎてお前の馬鹿さが際だつだけだぞ。
いずれにしても、脱jQueryなんてのが出てくるのはjQueryを使う意味がなくなりつつあるからであって、
お前がそれを気に入らなくても、それは事実として認めるしかないし、
実際にjQueryから輸入された仕様もあるのだからjQuery自体が糞だったわけでもないんだよ。
ただ、役割を終えつつある、というだけの話であってさ。
652デフォルトの名無しさん
2020/07/24(金) 08:42:13.69ID:9v9Epd9J バブリングフェーズとイベントデリゲーションはバスタブとミカンくらい意味が違うがおんなじもんだと思ってたわけ?w
653デフォルトの名無しさん
2020/07/24(金) 08:55:46.07ID:fMjVnhWI > まず示したように、「イベントデリゲーション」なんて言葉は誰も使ってないから止めとけ。
↓
https://developer.mozilla.org/ja/docs/Web/API/Event/target
event.target プロパティは、イベントデリゲーションを実装するために使用できます。
https://developer.mozilla.org/en-US/docs/Web/API/Event/target
The event.target property can be used in order to implement event delegation.
↓
https://developer.mozilla.org/ja/docs/Web/API/Event/target
event.target プロパティは、イベントデリゲーションを実装するために使用できます。
https://developer.mozilla.org/en-US/docs/Web/API/Event/target
The event.target property can be used in order to implement event delegation.
654デフォルトの名無しさん
2020/07/24(金) 08:56:14.50ID:9v9Epd9J > まず示したように、「イベントデリゲーション」なんて言葉は誰も使ってないから止めとけ。
えーっと、ボクチン英語が分かりませーんという話かな?www
英語
https://developer.mozilla.org/en-US/docs/Learn/JavaScript/Building_blocks/Events#Event_delegation
日本語
https://developer.mozilla.org/docs/Learn/JavaScript/Building_blocks/Events#Event_delegation
えーっと、ボクチン英語が分かりませーんという話かな?www
英語
https://developer.mozilla.org/en-US/docs/Learn/JavaScript/Building_blocks/Events#Event_delegation
日本語
https://developer.mozilla.org/docs/Learn/JavaScript/Building_blocks/Events#Event_delegation
655デフォルトの名無しさん
2020/07/24(金) 08:58:29.43ID:L9K/ZYyg URLからしてイベントデリゲーション使ってるなw
誰も使ってない用語とは…?w
誰も使ってない用語とは…?w
656デフォルトの名無しさん
2020/07/24(金) 08:58:39.33ID:fMjVnhWI >>650
> イベントバブルの説明に必ず出てくる言葉なら、
でてくるわけねーだろw
イベントバブル=イベントデリゲーションじゃねーんだから
DOM APIのイベントモデルではイベントバブルがデフォルトで使われる
イベントモデルの説明でバブルフェーズとキャプチャフェーズの話は出る
だがイベントデリゲーションはかならず使うものではない
お前が、イベントバブル=イベントデリゲーション (つまり同じ意味)だと
勘違いしてるから、使用頻度=ヒットページ数も1:1になるという間違った結論になってる
イベントデリゲーションはかならず使うものじゃないんだから
イベントデリゲーションの方が数は少なくなるのは当たり前
> イベントバブルの説明に必ず出てくる言葉なら、
でてくるわけねーだろw
イベントバブル=イベントデリゲーションじゃねーんだから
DOM APIのイベントモデルではイベントバブルがデフォルトで使われる
イベントモデルの説明でバブルフェーズとキャプチャフェーズの話は出る
だがイベントデリゲーションはかならず使うものではない
お前が、イベントバブル=イベントデリゲーション (つまり同じ意味)だと
勘違いしてるから、使用頻度=ヒットページ数も1:1になるという間違った結論になってる
イベントデリゲーションはかならず使うものじゃないんだから
イベントデリゲーションの方が数は少なくなるのは当たり前
657デフォルトの名無しさん
2020/07/24(金) 09:03:00.98ID:9v9Epd9J プッチンプリンとにんにく卵黄は同じものだ!
その証拠に、卵黄にんにくのほうが検索ヒット数が少ない!!
にんにく卵黄なんて用語は誰も使ってない!
プッチンプリンが正しい!!
???wwwww
その証拠に、卵黄にんにくのほうが検索ヒット数が少ない!!
にんにく卵黄なんて用語は誰も使ってない!
プッチンプリンが正しい!!
???wwwww
658デフォルトの名無しさん
2020/07/24(金) 09:08:11.32ID:fMjVnhWI >>651
> 俺は「イベントバブルを最初に実装した『フレームワークが』がHTMLだと言った。
HTMLの仕様にイベントバブルなんてものはない
DOM APIの仕様だ
「イベントバブルを最初に実装した」というのはどういう意味か言ってみ
上の要素でイベントを捕まえて処理することではないのはもう理解してるよな
お前は「イベントがDOM要素の下位から上位へバブルのように登っていくこと」を実装した。
と言ってるわけだが、自分で理解してるのか?
> 俺は「イベントバブルを最初に実装した『フレームワークが』がHTMLだと言った。
HTMLの仕様にイベントバブルなんてものはない
DOM APIの仕様だ
「イベントバブルを最初に実装した」というのはどういう意味か言ってみ
上の要素でイベントを捕まえて処理することではないのはもう理解してるよな
お前は「イベントがDOM要素の下位から上位へバブルのように登っていくこと」を実装した。
と言ってるわけだが、自分で理解してるのか?
659デフォルトの名無しさん
2020/07/24(金) 09:09:27.92ID:fMjVnhWI >>651
> むしろお前がそれを書けないと言っているに近いが、それをお前は認めるか?
だからさっさと書けよ。お前をテストしてやってるに決まってるだろw
最初からコード書けと言ってるのになんで書けないのは
お前がそれを書けないと言っているに近いが、それをお前は認めるか?
> むしろお前がそれを書けないと言っているに近いが、それをお前は認めるか?
だからさっさと書けよ。お前をテストしてやってるに決まってるだろw
最初からコード書けと言ってるのになんで書けないのは
お前がそれを書けないと言っているに近いが、それをお前は認めるか?
660デフォルトの名無しさん
2020/07/24(金) 09:21:46.61ID:fMjVnhWI 脱jQueryなんて言葉が出てきても、脱jQueryが進んでいないのは事実だろ
https://w3techs.com/technologies/history_overview/javascript_library/all/y
jQuery
2017年1月 71.9%
2018年1月 73.1% (+0.1%/月)
2019年1月 73.6% (+0.05%/月)
2020年1月 74.2%
同年2月 74.4% (+0.2%/月)※1ヶ月経過時点
同年6月 75.5% (+0.26%/月))※5ヶ月経過時点
同年7月 76.0% (+0.3%/月)※6ヶ月経過時点
今年はなぜかjQueryのシェアの増加が加速してきてるんだわ。
最初の1ヶ月で0.2%しか増えてなかったのに、
6ヶ月後は1.2%増ではなく1.8%増、増加スピードが上がってる
後半さらに増加スピードが上がるとは思えないが、
このペースだと今年は1年で4%も増える可能性だってある。
ここ数年1%程度しか増えていなかったのに不思議だ
脱jQueryなんて所詮言葉だけだったということだ
https://w3techs.com/technologies/history_overview/javascript_library/all/y
jQuery
2017年1月 71.9%
2018年1月 73.1% (+0.1%/月)
2019年1月 73.6% (+0.05%/月)
2020年1月 74.2%
同年2月 74.4% (+0.2%/月)※1ヶ月経過時点
同年6月 75.5% (+0.26%/月))※5ヶ月経過時点
同年7月 76.0% (+0.3%/月)※6ヶ月経過時点
今年はなぜかjQueryのシェアの増加が加速してきてるんだわ。
最初の1ヶ月で0.2%しか増えてなかったのに、
6ヶ月後は1.2%増ではなく1.8%増、増加スピードが上がってる
後半さらに増加スピードが上がるとは思えないが、
このペースだと今年は1年で4%も増える可能性だってある。
ここ数年1%程度しか増えていなかったのに不思議だ
脱jQueryなんて所詮言葉だけだったということだ
661デフォルトの名無しさん
2020/07/24(金) 09:24:24.50ID:2LubhzPR >>656
> イベントデリゲーションはかならず使うものじゃないんだから
> イベントデリゲーションの方が数は少なくなるのは当たり前
ここが違う。
バブルを利用する時点で「親で纏めて処理する」大前提なんだよ。これも既に言ったが。
逆に、バブルだけしても親で処理しないのなら意味無いだろ。
(まあバブル自体は勝手にするのだが)
だからイベントバブルの説明の際には必ず「親で処理する」事が含まれるんだよ。
これもお前みたいな文系馬鹿は「知識」としてそれぞれを別々にインストールしているから分からないのだろうが、
イベントバブルの説明=イベントバブル自体とその使い方の説明=当然親でイベントを纏めて処理する=「イベントデリゲーション」も説明される
なんだよ。イベントバブルをお前はJavaScriptの「知識」として捕らえ、
「バブルフェーズとキャプチャフェーズ」もまた別の知識であり、
「イベントデリゲーション」も全く別の手法として「別知識」としているから駄目なんだ。
イベントバブルだけ理解しても、普通は、「ほ〜ん、で?何が嬉しいの?」となるから、どうやって使うか、何が美味しいかまで説明されてる。
だけどそこでは誰も「イベントデリゲーション」と言ってないから1000:1の使用頻度になってる。
ただし実際にイベントバブルを活用するにはそれなりの知識と設計が必要であり、
初心者には無理だから初心者用サイトでの説明は皆無で、既に言ったとおり俺が知っているのはuhyohyoだけ。
そしてここら辺が有機的に繋がっているのを理解出来ないのは君が「イベントバブルを活用するのは難しい初心者」レベルだから。
お前は相変わらず初心者のままなんだよ。
> イベントデリゲーションはかならず使うものじゃないんだから
> イベントデリゲーションの方が数は少なくなるのは当たり前
ここが違う。
バブルを利用する時点で「親で纏めて処理する」大前提なんだよ。これも既に言ったが。
逆に、バブルだけしても親で処理しないのなら意味無いだろ。
(まあバブル自体は勝手にするのだが)
だからイベントバブルの説明の際には必ず「親で処理する」事が含まれるんだよ。
これもお前みたいな文系馬鹿は「知識」としてそれぞれを別々にインストールしているから分からないのだろうが、
イベントバブルの説明=イベントバブル自体とその使い方の説明=当然親でイベントを纏めて処理する=「イベントデリゲーション」も説明される
なんだよ。イベントバブルをお前はJavaScriptの「知識」として捕らえ、
「バブルフェーズとキャプチャフェーズ」もまた別の知識であり、
「イベントデリゲーション」も全く別の手法として「別知識」としているから駄目なんだ。
イベントバブルだけ理解しても、普通は、「ほ〜ん、で?何が嬉しいの?」となるから、どうやって使うか、何が美味しいかまで説明されてる。
だけどそこでは誰も「イベントデリゲーション」と言ってないから1000:1の使用頻度になってる。
ただし実際にイベントバブルを活用するにはそれなりの知識と設計が必要であり、
初心者には無理だから初心者用サイトでの説明は皆無で、既に言ったとおり俺が知っているのはuhyohyoだけ。
そしてここら辺が有機的に繋がっているのを理解出来ないのは君が「イベントバブルを活用するのは難しい初心者」レベルだから。
お前は相変わらず初心者のままなんだよ。
662デフォルトの名無しさん
2020/07/24(金) 09:30:06.20ID:fMjVnhWI > バブルを利用する時点で「親で纏めて処理する」大前提なんだよ。これも既に言ったが。
誰が言ってるんですか?
そうであってほしいという願望ですよねw
誰が言ってるんですか?
そうであってほしいという願望ですよねw
663デフォルトの名無しさん
2020/07/24(金) 09:35:52.90ID:2LubhzPR >>658
> DOM APIの仕様だ
まあ厳密にはあれはDOMに入れるべき物でもないんだよ。
だから今も「For web developers(non-nomative)」という中途半端な扱いになってる。
あれはDOMと言うよりはプログラミングモデルであって、本来は別仕様を起こすべきなのだが、
それを言いだしたらきりがないから現状はDOMに突っ込まれているだけでさ。
> 「イベントバブルを最初に実装した」というのはどういう意味か言ってみ
> お前は「イベントがDOM要素の下位から上位へバブルのように登っていくこと」を実装した。
そうだぞ。俺はそう言ったんだ。
イベントがバブルするGUIフレームワークというのは、俺が知ってる中ではHTML/CSS/JavaScriptが初だよ。
それ以前の、XやMFC、.NET(Forms)ではバブルしない。
むしろお前は何をどう勘違いして俺に突っかかってきてるんだ?
>>659
お前が簡単に書けるのなら書かないよ。書く意味もないし。
それってconsoleログ知ってる俺スゲー的なレベルであって、そんなもん一々コード書いてても時間の無駄だろ。
>>660
そう思うのならそれでいいと思うが。
必死にjQueryにすがるからおかしくなるだけで。
必要ない人はjQueryを使わないし、実際必要なくなりつつあるだけの話で、必要だと思えば使い続ければいいし、それだけだろ。
> DOM APIの仕様だ
まあ厳密にはあれはDOMに入れるべき物でもないんだよ。
だから今も「For web developers(non-nomative)」という中途半端な扱いになってる。
あれはDOMと言うよりはプログラミングモデルであって、本来は別仕様を起こすべきなのだが、
それを言いだしたらきりがないから現状はDOMに突っ込まれているだけでさ。
> 「イベントバブルを最初に実装した」というのはどういう意味か言ってみ
> お前は「イベントがDOM要素の下位から上位へバブルのように登っていくこと」を実装した。
そうだぞ。俺はそう言ったんだ。
イベントがバブルするGUIフレームワークというのは、俺が知ってる中ではHTML/CSS/JavaScriptが初だよ。
それ以前の、XやMFC、.NET(Forms)ではバブルしない。
むしろお前は何をどう勘違いして俺に突っかかってきてるんだ?
>>659
お前が簡単に書けるのなら書かないよ。書く意味もないし。
それってconsoleログ知ってる俺スゲー的なレベルであって、そんなもん一々コード書いてても時間の無駄だろ。
>>660
そう思うのならそれでいいと思うが。
必死にjQueryにすがるからおかしくなるだけで。
必要ない人はjQueryを使わないし、実際必要なくなりつつあるだけの話で、必要だと思えば使い続ければいいし、それだけだろ。
664デフォルトの名無しさん
2020/07/24(金) 09:39:24.99ID:2LubhzPR665デフォルトの名無しさん
2020/07/24(金) 09:39:35.00ID:fMjVnhWI さて、どこに親で処理すると書いてあるのでしょうか?w
https://en.wikipedia.org/wiki/Event_bubbling
Use of Event Bubbling
To handle cases where one event has more than one handler,
event bubbling concept can be implemented. The major use of
event bubbling is the registration of default functions present in the program.
In recent times, not many developers use event capturing or bubbling in particular.
It is not necessary to implement event bubbling; it may become complicated for
the users to keep track of the actions getting executed because of an event.[1]
英語は読めるけど(あんたために、でも面倒なので)Google翻訳しますねw
イベントバブリングの使用
1つのイベントに複数のハンドラーがある場合を処理するために、イベントバブリングの概念を実装できます。
イベントバブリングの主な用途は、プログラムに存在するデフォルト関数の登録です。
最近では、特にイベントキャプチャやバブリングを使用する開発者は多くありません。
イベントバブリングを実装する必要はありません。イベントのために実行されるアクションを
ユーザーが追跡するのは複雑になる場合があります。[1]
「1つのイベントに複数のハンドラーがある場合を処理するため」というのは
要素をクリックしたときに、クリックした要素→それが含まれた親要素→さらにそれらが含まれた親要素と
複数の要素(の複数のクリックイベントハンドラ)が実行されるわけです。
これがイベントバブリングの例として上げられています。
そして主な用途はデフォルト関数(デフォルト処理)の登録です。
またイベントキャプチャやバブリングを使用する開発者は多くないとまで書いてあります。
親でまとめて処理する話はでてきていません。
面白いですね(笑)
https://en.wikipedia.org/wiki/Event_bubbling
Use of Event Bubbling
To handle cases where one event has more than one handler,
event bubbling concept can be implemented. The major use of
event bubbling is the registration of default functions present in the program.
In recent times, not many developers use event capturing or bubbling in particular.
It is not necessary to implement event bubbling; it may become complicated for
the users to keep track of the actions getting executed because of an event.[1]
英語は読めるけど(あんたために、でも面倒なので)Google翻訳しますねw
イベントバブリングの使用
1つのイベントに複数のハンドラーがある場合を処理するために、イベントバブリングの概念を実装できます。
イベントバブリングの主な用途は、プログラムに存在するデフォルト関数の登録です。
最近では、特にイベントキャプチャやバブリングを使用する開発者は多くありません。
イベントバブリングを実装する必要はありません。イベントのために実行されるアクションを
ユーザーが追跡するのは複雑になる場合があります。[1]
「1つのイベントに複数のハンドラーがある場合を処理するため」というのは
要素をクリックしたときに、クリックした要素→それが含まれた親要素→さらにそれらが含まれた親要素と
複数の要素(の複数のクリックイベントハンドラ)が実行されるわけです。
これがイベントバブリングの例として上げられています。
そして主な用途はデフォルト関数(デフォルト処理)の登録です。
またイベントキャプチャやバブリングを使用する開発者は多くないとまで書いてあります。
親でまとめて処理する話はでてきていません。
面白いですね(笑)
666デフォルトの名無しさん
2020/07/24(金) 09:41:46.92ID:fMjVnhWI >>663
> むしろお前は何をどう勘違いして俺に突っかかってきてるんだ?
何をどうって、jQueryはイベントバブリングしかサポートしてないのに
jQueryでイベントバブルを使うと意味がないと言っただろw
どういう意味ですか?jQueryはイベントバブルしか使いませんよ?
イベントバブルを使うということは親で処理するって意味じゃありませんよ?
わかってますかw
> むしろお前は何をどう勘違いして俺に突っかかってきてるんだ?
何をどうって、jQueryはイベントバブリングしかサポートしてないのに
jQueryでイベントバブルを使うと意味がないと言っただろw
どういう意味ですか?jQueryはイベントバブルしか使いませんよ?
イベントバブルを使うということは親で処理するって意味じゃありませんよ?
わかってますかw
667デフォルトの名無しさん
2020/07/24(金) 09:42:35.90ID:fMjVnhWI >>664
> なら逆に、「イベントバブルを利用するが親ではイベントを処理しない」方式で何か有効活用出来るか?
英語のwikipediaにかいてある。
> それがあれば「大前提」ってのは俺の勘違いだと認めるが。
それがあったのでお前の勘違いだと認めるようにw
> なら逆に、「イベントバブルを利用するが親ではイベントを処理しない」方式で何か有効活用出来るか?
英語のwikipediaにかいてある。
> それがあれば「大前提」ってのは俺の勘違いだと認めるが。
それがあったのでお前の勘違いだと認めるようにw
668デフォルトの名無しさん
2020/07/24(金) 09:43:33.55ID:fMjVnhWI >>663
> イベントがバブルするGUIフレームワークというのは、俺が知ってる中ではHTML/CSS/JavaScriptが初だよ。
HTML/CSS/JavaScriptのいずれの仕様でもありません。
DOMの仕様です。DOMです。Javaでも使えるDOMです。
何度言えば理解できるんだ?
> イベントがバブルするGUIフレームワークというのは、俺が知ってる中ではHTML/CSS/JavaScriptが初だよ。
HTML/CSS/JavaScriptのいずれの仕様でもありません。
DOMの仕様です。DOMです。Javaでも使えるDOMです。
何度言えば理解できるんだ?
669デフォルトの名無しさん
2020/07/24(金) 09:48:58.90ID:2LubhzPR670デフォルトの名無しさん
2020/07/24(金) 09:49:55.44ID:fMjVnhWI >>669
> wikiじゃねーかよ!そりゃ書いた奴が分かってねえんだよ。
お前はwikipedia以外のなにか信用できるものを持ってきたか?
お前の意見はwikipedia以下だってことは理解してるか?
> wikiじゃねーかよ!そりゃ書いた奴が分かってねえんだよ。
お前はwikipedia以外のなにか信用できるものを持ってきたか?
お前の意見はwikipedia以下だってことは理解してるか?
671デフォルトの名無しさん
2020/07/24(金) 09:52:19.09ID:fMjVnhWI672デフォルトの名無しさん
2020/07/24(金) 10:00:24.59ID:fMjVnhWI まとめ更新
こいつはイベントバブルの用途をイベントデリゲーション(複数の要素に同じイベントハンドラを割り当てるコード)しかしらず
イベントバブル=イベントデリゲーションのことだ!と思い込んでオレオレ用語で「イベントバブルを実装!」と言っていた
こいつは自分にしか理解できない間違った用語の使い方を指定ながら、コミュニケーションがどうとか語っていた
こいつはMDNにかかれているイベントデリゲーションのページを見せても
世の中で使われてない!と強弁した。
こいつはHTML/CSS/JavaScriptがイベントバブルを実装した最初のフレームワークだと言った。
(当たり前がHTMLはマークアップ言語、CSSはスタイルシート、JavaScriptは言語で
どれにもイベントバブルに関する実装など存在しない。イベントバブルはDOMで規定されている)
こいつはjQueryは最初からイベントバブルに対応していたことも知らず、
(というか古いIEがイベントバブルしか実装されていなかったのでキャプチャフェーズに対応するのは不可能)
イベントバブルを使うとjQueryを使う意味がないと言った。
そしてjQueryで書いているコードを見たことがない、もしくは見たことあっても気づかないで
jQueryでもDOM APIと同じように書くしかないはずだ!だからjQueryを使う意味がない!と言っていた。
jQueryで(イベントバブルではなくw)イベントデリゲーションで実装してるコードを見せても
イベントバブルを使ってない!とか意味のわからないことを言った。
イベントデリゲーションこそjQueryだとDOM APIよりもシンプルに書けるコードの一つだった
こいつは脱jQueryが進んでいない現状を示しても、その事実を受け入れることができなかった
こいつはイベントバブルの用途をイベントデリゲーション(複数の要素に同じイベントハンドラを割り当てるコード)しかしらず
イベントバブル=イベントデリゲーションのことだ!と思い込んでオレオレ用語で「イベントバブルを実装!」と言っていた
こいつは自分にしか理解できない間違った用語の使い方を指定ながら、コミュニケーションがどうとか語っていた
こいつはMDNにかかれているイベントデリゲーションのページを見せても
世の中で使われてない!と強弁した。
こいつはHTML/CSS/JavaScriptがイベントバブルを実装した最初のフレームワークだと言った。
(当たり前がHTMLはマークアップ言語、CSSはスタイルシート、JavaScriptは言語で
どれにもイベントバブルに関する実装など存在しない。イベントバブルはDOMで規定されている)
こいつはjQueryは最初からイベントバブルに対応していたことも知らず、
(というか古いIEがイベントバブルしか実装されていなかったのでキャプチャフェーズに対応するのは不可能)
イベントバブルを使うとjQueryを使う意味がないと言った。
そしてjQueryで書いているコードを見たことがない、もしくは見たことあっても気づかないで
jQueryでもDOM APIと同じように書くしかないはずだ!だからjQueryを使う意味がない!と言っていた。
jQueryで(イベントバブルではなくw)イベントデリゲーションで実装してるコードを見せても
イベントバブルを使ってない!とか意味のわからないことを言った。
イベントデリゲーションこそjQueryだとDOM APIよりもシンプルに書けるコードの一つだった
こいつは脱jQueryが進んでいない現状を示しても、その事実を受け入れることができなかった
673デフォルトの名無しさん
2020/07/24(金) 10:01:50.66ID:fMjVnhWI jQueryおじさん完全勝利(笑)
674デフォルトの名無しさん
2020/07/24(金) 10:12:17.88ID:2LubhzPR >>670
一応読んだぞ。
まあそう思うのは自由だが、それは最初に書いてあるとおり、
> To handle cases where one event has more than one handler, event bubbling concept can be implemented. The major use of event bubbling is the registration of default functions present in the program.
つまり一つのElementに複数のイベントハンドラを付けたい時にバブルを活用出来るとか、
或いはrootにデフォルトのイベントfunctionを付けておけばそれを「上書き」する際に活用出来る、みたいなわけだが、
そんな使い方してるサイトなんて無いぞ。というかそんなことしたら怒られると思うが。
複数付けたければ普通にaddEventListenerすればいいだけだし、
サイトのスクリプトがユーザースクリプトその他によって「上書き」される前提で書いているサイトなんてほぼ無い。
あるにしてもこんな邪道なやり方ではなく、「サイトのスクリプトをオフにする」という、公式な無効化機能が付いてる。
というか、そうじゃないとお互いに困るだろ。お前はそれも分からないレベルなのだろうけど。
>>671
逃げたって何の事よ?
jQueryが採用しているとかそういう話ではなくて、
そもそもバブルは(お前が拘っている『DOMの仕様』なのだから)jQueryとは関係なく、勝手にする物だ。
そしてバブルを利用した書き方=親で纏めて処理する方式なら、
jQueryの得意とするqueryをすることがないからjQueryを使う意味がない、と言ったんだよ。
それはお前が本当に『書ける』というのならすぐに分かる話だろ。
お前はやっぱり書けないのだと思うよ。
一応読んだぞ。
まあそう思うのは自由だが、それは最初に書いてあるとおり、
> To handle cases where one event has more than one handler, event bubbling concept can be implemented. The major use of event bubbling is the registration of default functions present in the program.
つまり一つのElementに複数のイベントハンドラを付けたい時にバブルを活用出来るとか、
或いはrootにデフォルトのイベントfunctionを付けておけばそれを「上書き」する際に活用出来る、みたいなわけだが、
そんな使い方してるサイトなんて無いぞ。というかそんなことしたら怒られると思うが。
複数付けたければ普通にaddEventListenerすればいいだけだし、
サイトのスクリプトがユーザースクリプトその他によって「上書き」される前提で書いているサイトなんてほぼ無い。
あるにしてもこんな邪道なやり方ではなく、「サイトのスクリプトをオフにする」という、公式な無効化機能が付いてる。
というか、そうじゃないとお互いに困るだろ。お前はそれも分からないレベルなのだろうけど。
>>671
逃げたって何の事よ?
jQueryが採用しているとかそういう話ではなくて、
そもそもバブルは(お前が拘っている『DOMの仕様』なのだから)jQueryとは関係なく、勝手にする物だ。
そしてバブルを利用した書き方=親で纏めて処理する方式なら、
jQueryの得意とするqueryをすることがないからjQueryを使う意味がない、と言ったんだよ。
それはお前が本当に『書ける』というのならすぐに分かる話だろ。
お前はやっぱり書けないのだと思うよ。
675デフォルトの名無しさん
2020/07/24(金) 10:13:31.15ID:fMjVnhWI もう負け逃げしたようだが、
イベントバブルの一番のユースケースはこれなんだよ
<a href="link">link<span>test<span></a>
1. aのクリックイベントハンドラ
2. spanのクリックイベントハンドラ
両方のイベントハンドラを設定することができ
両方のイベントハンドラが発動する
これがwikipediaに書いてあったことの具体的な意味
そのイベント発動を行うフェーズがバブリングフェーズとキャプチャフェーズの二種類あり
バブリングフェーズにおいて下位の要素から上位の要素に伝搬することを
イベントバブリング(イベントバブル動作)という
(イベントバブルだけでは意味が不明確)
イベントバブルの一番のユースケースはこれなんだよ
<a href="link">link<span>test<span></a>
1. aのクリックイベントハンドラ
2. spanのクリックイベントハンドラ
両方のイベントハンドラを設定することができ
両方のイベントハンドラが発動する
これがwikipediaに書いてあったことの具体的な意味
そのイベント発動を行うフェーズがバブリングフェーズとキャプチャフェーズの二種類あり
バブリングフェーズにおいて下位の要素から上位の要素に伝搬することを
イベントバブリング(イベントバブル動作)という
(イベントバブルだけでは意味が不明確)
676デフォルトの名無しさん
2020/07/24(金) 10:15:13.60ID:fMjVnhWI >>674
まだ繰り返すのかw
> jQueryの得意とするqueryをすることがないからjQueryを使う意味がない、と言ったんだよ。
めんどくさいから突っ込まなかったことろを再掲するとかアホやなぁ
「queryをすること」ってなんだよ。どういう意味なのか言ってみ
queryしているコードを書いてみろって
まだ繰り返すのかw
> jQueryの得意とするqueryをすることがないからjQueryを使う意味がない、と言ったんだよ。
めんどくさいから突っ込まなかったことろを再掲するとかアホやなぁ
「queryをすること」ってなんだよ。どういう意味なのか言ってみ
queryしているコードを書いてみろって
677デフォルトの名無しさん
2020/07/24(金) 10:17:09.02ID:fMjVnhWI 先に書いてやるか
jQueryでqueryすること(意味がよくわからんが)と言われれば
普通に思いつくのは、$('#id1"') とかなわけだが
>>623で「イベントデリゲーション」を使ったコードでも
このようにqueryしてますがなにか?
https://jsfiddle.net/m8q15376/
$("#id1").on('click', 'a', function() {
$(this).css("background", "red");
});
jQueryでqueryすること(意味がよくわからんが)と言われれば
普通に思いつくのは、$('#id1"') とかなわけだが
>>623で「イベントデリゲーション」を使ったコードでも
このようにqueryしてますがなにか?
https://jsfiddle.net/m8q15376/
$("#id1").on('click', 'a', function() {
$(this).css("background", "red");
});
678デフォルトの名無しさん
2020/07/24(金) 10:18:57.42ID:fMjVnhWI >>674
> つまり一つのElementに複数のイベントハンドラを付けたい時にバブルを活用出来るとか、
そんなことは英語に書いてない
> To handle cases where one event(一つのイベントが) has more than one handler (一つ以上のハンドラを持っている場合), event bubbling concept can be implemented.
「一つのElementに複数のイベントハンドラを付けたい」などとは書いていない。
> つまり一つのElementに複数のイベントハンドラを付けたい時にバブルを活用出来るとか、
そんなことは英語に書いてない
> To handle cases where one event(一つのイベントが) has more than one handler (一つ以上のハンドラを持っている場合), event bubbling concept can be implemented.
「一つのElementに複数のイベントハンドラを付けたい」などとは書いていない。
679デフォルトの名無しさん
2020/07/24(金) 10:20:19.73ID:fMjVnhWI せっかくGoogle翻訳もしてやったのに
英語読めないなら、ちゃんと日本語も読めよ(笑)
英語読めないなら、ちゃんと日本語も読めよ(笑)
680デフォルトの名無しさん
2020/07/24(金) 10:23:00.47ID:fMjVnhWI >>674
> そもそもバブルは(お前が拘っている『DOMの仕様』なのだから)jQueryとは関係なく、勝手にする物だ。
お前最初に、バブルは勝手にするものじゃなくて
親でまとめてイベント処理することだって言ってたじゃんwww
自分が使っていた用語が間違っていましたって認めたの?
> そもそもバブルは(お前が拘っている『DOMの仕様』なのだから)jQueryとは関係なく、勝手にする物だ。
お前最初に、バブルは勝手にするものじゃなくて
親でまとめてイベント処理することだって言ってたじゃんwww
自分が使っていた用語が間違っていましたって認めたの?
681デフォルトの名無しさん
2020/07/24(金) 10:42:49.37ID:2LubhzPR >>676
> queryしているコードを書いてみろって
それはお前が>>622,623で既に書いてるだろ。
jQueryが美味しいのは、getElementByIdとか長たらしいこと書かずに$('#id')と書けるとか、
HTMLCollectionなのに単発のDOMみたいに扱えてforやforEach等のループを自前で書く必要がないとか、そういうところだろ。
そして俺が言ってるのは、親にeventhandlerを付けるのならその辺のおいしさが全くなくなる、ということだよ。
ただまあ、jQueryがそこまで好きならjQueryで一生書けばいいとも思うけど。
俺は必要ないから今後とも使わないだけであって。
> queryしているコードを書いてみろって
それはお前が>>622,623で既に書いてるだろ。
jQueryが美味しいのは、getElementByIdとか長たらしいこと書かずに$('#id')と書けるとか、
HTMLCollectionなのに単発のDOMみたいに扱えてforやforEach等のループを自前で書く必要がないとか、そういうところだろ。
そして俺が言ってるのは、親にeventhandlerを付けるのならその辺のおいしさが全くなくなる、ということだよ。
ただまあ、jQueryがそこまで好きならjQueryで一生書けばいいとも思うけど。
俺は必要ないから今後とも使わないだけであって。
682デフォルトの名無しさん
2020/07/24(金) 10:44:01.60ID:2LubhzPR >>680
> 親でまとめてイベント処理することだって言ってたじゃんwww
そうだぞ。イベントバブルを活用する=親で纏めて処理する、だ。
それ以外のまともな使い方は俺は知らん。(以下に続く)
>>678
おお、確かに読み間違えてる。
一つのイベントが複数のイベントハンドラを持ちたい場合か。
しかし何だそりゃ?て話だがな。
一つのイベントに複数のハンドラを持たせたい為にバブルさせてそれぞれの階層で処理させて結果的に複数処理するってのは、
実際の動きを説明していると言えばそうだが、これの為にバブルを活用するのは間違いだと思うが。
ただまあ、wikiはこの辺デタラメに書く奴が居るからそこまでは信用しない方がいい。
Cの日本語wikiとかも結構デタラメだったりするし。
逆に、本当にこのケース「一つのイベントに複数のハンドラを持たせたい為」にバブルを利用して、
それ以外の方法では美しく実装出来ないケースがあれば確かに俺の勘違いだと認めるが、あるか?
何度も言ってるが、俺はそれがないから「バブルを利用する=親で纏めて処理」だと思っているわけでさ。
或いはこの記述、ユーザ目線ではなくブラウザ目線で書かれている?
mouseleave/outの違いとか、
確かにmouseoutは一つのイベントを複数階層で処理して結果的に複数のハンドラを一つのイベントに与えている、とは言えるけども。
https://developer.mozilla.org/en-US/docs/Web/API/Element/mouseleave_event
> 親でまとめてイベント処理することだって言ってたじゃんwww
そうだぞ。イベントバブルを活用する=親で纏めて処理する、だ。
それ以外のまともな使い方は俺は知らん。(以下に続く)
>>678
おお、確かに読み間違えてる。
一つのイベントが複数のイベントハンドラを持ちたい場合か。
しかし何だそりゃ?て話だがな。
一つのイベントに複数のハンドラを持たせたい為にバブルさせてそれぞれの階層で処理させて結果的に複数処理するってのは、
実際の動きを説明していると言えばそうだが、これの為にバブルを活用するのは間違いだと思うが。
ただまあ、wikiはこの辺デタラメに書く奴が居るからそこまでは信用しない方がいい。
Cの日本語wikiとかも結構デタラメだったりするし。
逆に、本当にこのケース「一つのイベントに複数のハンドラを持たせたい為」にバブルを利用して、
それ以外の方法では美しく実装出来ないケースがあれば確かに俺の勘違いだと認めるが、あるか?
何度も言ってるが、俺はそれがないから「バブルを利用する=親で纏めて処理」だと思っているわけでさ。
或いはこの記述、ユーザ目線ではなくブラウザ目線で書かれている?
mouseleave/outの違いとか、
確かにmouseoutは一つのイベントを複数階層で処理して結果的に複数のハンドラを一つのイベントに与えている、とは言えるけども。
https://developer.mozilla.org/en-US/docs/Web/API/Element/mouseleave_event
683デフォルトの名無しさん
2020/07/24(金) 10:44:43.06ID:fMjVnhWI >>681
> そして俺が言ってるのは、親にeventhandlerを付けるのならその辺のおいしさが全くなくなる、ということだよ。
だからその親にeventhandlerを付けるコード書けって言ってるんだが?
俺はそれがすごく読みづらくなって、jQueryで書いたらシンプルになると知ってるわけ
さっさと書けよ。ここまで言って書かないのは、
お前がそれを書けないと言っているに近いが、それをお前は認めるか?
> そして俺が言ってるのは、親にeventhandlerを付けるのならその辺のおいしさが全くなくなる、ということだよ。
だからその親にeventhandlerを付けるコード書けって言ってるんだが?
俺はそれがすごく読みづらくなって、jQueryで書いたらシンプルになると知ってるわけ
さっさと書けよ。ここまで言って書かないのは、
お前がそれを書けないと言っているに近いが、それをお前は認めるか?
684デフォルトの名無しさん
2020/07/24(金) 10:45:17.15ID:fMjVnhWI685デフォルトの名無しさん
2020/07/24(金) 10:46:32.32ID:fMjVnhWI >>682
> 逆に、本当にこのケース「一つのイベントに複数のハンドラを持たせたい為」にバブルを利用して、
> それ以外の方法では美しく実装出来ないケースがあれば確かに俺の勘違いだと認めるが、あるか?
俺の勘違いだと認めるがと言っておきながら、
wikipediaの例を出したら認めなかっただろ
嘘つきだよなw
> 逆に、本当にこのケース「一つのイベントに複数のハンドラを持たせたい為」にバブルを利用して、
> それ以外の方法では美しく実装出来ないケースがあれば確かに俺の勘違いだと認めるが、あるか?
俺の勘違いだと認めるがと言っておきながら、
wikipediaの例を出したら認めなかっただろ
嘘つきだよなw
686デフォルトの名無しさん
2020/07/24(金) 10:48:00.94ID:fMjVnhWI > 何度も言ってるが、俺はそれがないから「バブルを利用する=親で纏めて処理」だと思っているわけでさ。
jQueryはイベントバブルにしか対応してないから、
すべてがイベントバブルを利用してるの
親でまとめて処理してなくてもイベントバブルを利用してるの
jQueryはイベントバブルにしか対応してないから、
すべてがイベントバブルを利用してるの
親でまとめて処理してなくてもイベントバブルを利用してるの
687デフォルトの名無しさん
2020/07/24(金) 10:52:08.90ID:fMjVnhWI > 逆に、本当にこのケース「一つのイベントに複数のハンドラを持たせたい為」にバブルを利用して、
> それ以外の方法では美しく実装出来ないケースがあれば確かに俺の勘違いだと認めるが、あるか?
一つのイベント・・・click
それ以外の方法では美しく実装出来ないケース・・・google map
お前の勘違いだって認めようねw
> それ以外の方法では美しく実装出来ないケースがあれば確かに俺の勘違いだと認めるが、あるか?
一つのイベント・・・click
それ以外の方法では美しく実装出来ないケース・・・google map
お前の勘違いだって認めようねw
688デフォルトの名無しさん
2020/07/24(金) 11:03:32.54ID:9v9Epd9J プッチンプリンとにんにく卵黄は同じものだ!
その証拠に、にんにく卵黄のほうが検索ヒット数が少ない!!
にんにく卵黄なんて用語は誰も使ってない!
プッチンプリンが正しい!!
???wwwww
その証拠に、にんにく卵黄のほうが検索ヒット数が少ない!!
にんにく卵黄なんて用語は誰も使ってない!
プッチンプリンが正しい!!
???wwwww
689デフォルトの名無しさん
2020/07/24(金) 11:09:00.66ID:2LubhzPR >>683-686
まあやはり堂々巡りか。
wikiに書いてる使い方で活用出来るかについては考えてはみるよ。
ただし、既に言ったが、今のところ俺はそんなの見たこと無いが。
お前が勘違いしているのは、デタラメな使い方でもちゃんとした使い方だ!と思っていること。
それは文系初心者プログラマにも多い、全ての文法を使える人が上級者だ!と勘違いしていたりするのにも近い。
実際はそうじゃない。
例えばキャプチャフェーズとかも実装されているから確かに使えるが、俺はそれを上手く使っている例を見たことがない。
正確に言えば、まともに設計すればキャプチャフェーズなんて必要な事がないから、誰も使ってないだけだが。
バブルにしても、邪道な使い方はいくらでも出来るが、そうではなくて、
正しい使い方=それ以外の方法ではそれ以上に美しく実装出来ない使い方なのか、ということだよ。
「一つのイベントに複数のハンドラ」も、addEventListerを複数行えば普通に実装出来る。
バブルさせる意味はないし、実際、バブルしない.NET(Forms)等でもこれは普通に可能だ。
だからまあ、君にも分かる書き方をするなら、
・バブルしないX、MFC、.NET(Forms)、GTK2等でも書ける事=バブルを活用しているわけではない
・バブルしないX、MFC、.NET(Forms)、GTK2等では出来ない書き方=バブルを活用している
なんだよ。そして複数のイベントをサブスクライブするのは.NET(Forms)は出来るから、
それはバブル必須ということにも、バブルを活用していることにもならない。
そしてその場合にはJavaScriptでも「バブル」ではなくaddEventListerを複数行うのが正道だよ。
まあやはり堂々巡りか。
wikiに書いてる使い方で活用出来るかについては考えてはみるよ。
ただし、既に言ったが、今のところ俺はそんなの見たこと無いが。
お前が勘違いしているのは、デタラメな使い方でもちゃんとした使い方だ!と思っていること。
それは文系初心者プログラマにも多い、全ての文法を使える人が上級者だ!と勘違いしていたりするのにも近い。
実際はそうじゃない。
例えばキャプチャフェーズとかも実装されているから確かに使えるが、俺はそれを上手く使っている例を見たことがない。
正確に言えば、まともに設計すればキャプチャフェーズなんて必要な事がないから、誰も使ってないだけだが。
バブルにしても、邪道な使い方はいくらでも出来るが、そうではなくて、
正しい使い方=それ以外の方法ではそれ以上に美しく実装出来ない使い方なのか、ということだよ。
「一つのイベントに複数のハンドラ」も、addEventListerを複数行えば普通に実装出来る。
バブルさせる意味はないし、実際、バブルしない.NET(Forms)等でもこれは普通に可能だ。
だからまあ、君にも分かる書き方をするなら、
・バブルしないX、MFC、.NET(Forms)、GTK2等でも書ける事=バブルを活用しているわけではない
・バブルしないX、MFC、.NET(Forms)、GTK2等では出来ない書き方=バブルを活用している
なんだよ。そして複数のイベントをサブスクライブするのは.NET(Forms)は出来るから、
それはバブル必須ということにも、バブルを活用していることにもならない。
そしてその場合にはJavaScriptでも「バブル」ではなくaddEventListerを複数行うのが正道だよ。
690デフォルトの名無しさん
2020/07/24(金) 11:10:04.24ID:2LubhzPR691デフォルトの名無しさん
2020/07/24(金) 11:12:00.44ID:fMjVnhWI >>689
堂々巡りなのはお前が間違いを認めないからだろ
jQueryの話をなかったことにするな。
お前がレスするのを逃げてるのはこれだな
先に書いてやるか
jQueryでqueryすること(意味がよくわからんが)と言われれば
普通に思いつくのは、$('#id1"') とかなわけだが
>>623で「イベントデリゲーション」を使ったコードでも
このようにqueryしてますがなにか?
https://jsfiddle.net/m8q15376/
$("#id1").on('click', 'a', function() {
$(this).css("background", "red");
});
堂々巡りなのはお前が間違いを認めないからだろ
jQueryの話をなかったことにするな。
お前がレスするのを逃げてるのはこれだな
先に書いてやるか
jQueryでqueryすること(意味がよくわからんが)と言われれば
普通に思いつくのは、$('#id1"') とかなわけだが
>>623で「イベントデリゲーション」を使ったコードでも
このようにqueryしてますがなにか?
https://jsfiddle.net/m8q15376/
$("#id1").on('click', 'a', function() {
$(this).css("background", "red");
});
692デフォルトの名無しさん
2020/07/24(金) 11:12:45.73ID:fMjVnhWI693デフォルトの名無しさん
2020/07/24(金) 11:17:44.62ID:2LubhzPR >>692
逃げてるも何も、そのやり方が正道でなければそりゃ認めないよ。
既に言っているし、君も知っているはずだが、プログラミングなんて糞な書き方は無限に出来るわけでさ。
ふと考えたが、eをもしかしてmutable扱いか?
これは若干邪道だけども、そうしないと無理(それ以外での実装では大量なコードが必要)ならそれもありではあるが。
逃げてるも何も、そのやり方が正道でなければそりゃ認めないよ。
既に言っているし、君も知っているはずだが、プログラミングなんて糞な書き方は無限に出来るわけでさ。
ふと考えたが、eをもしかしてmutable扱いか?
これは若干邪道だけども、そうしないと無理(それ以外での実装では大量なコードが必要)ならそれもありではあるが。
694デフォルトの名無しさん
2020/07/24(金) 11:19:41.76ID:fMjVnhWI695デフォルトの名無しさん
2020/07/24(金) 11:20:24.05ID:fMjVnhWI こいつは何一つコードを書かない
俺はすでに書いている
俺はすでに書いている
696デフォルトの名無しさん
2020/07/24(金) 11:21:33.78ID:2LubhzPR697デフォルトの名無しさん
2020/07/26(日) 04:16:24.04ID:GfAtypzY 誰かjsで書ける珍しいコードのせてくれや
698デフォルトの名無しさん
2020/07/26(日) 21:49:52.62ID:f+jrD57t699デフォルトの名無しさん
2020/07/27(月) 17:27:45.80ID:2I3xUck9 >>698
なるほど 納得
なるほど 納得
700デフォルトの名無しさん
2020/07/27(月) 18:00:07.01ID:2I3xUck9 javascript玄人もいったんこの解説みろ
http://re-file.com/18k/1677/
http://re-file.com/18k/1677/
701デフォルトの名無しさん
2020/07/27(月) 19:33:11.29ID:SDAq9vDF >>700のリンク先
俺以外もう見なくていいぞw
【メキシコ】麻薬カルテル、ライバル組織の女を拘束、手足を縛り生きたまま解体 - 18禁グロ
▼カテゴリ - 18禁グロには一部、異様・奇怪・猟奇的・暴力シーン・グロテスクな表現が含まれていますので、閲覧制限をしています。
1. 18歳未満は閲覧禁止です。
2. 耐性が無い方は閲覧しないでください。
3. 閲覧は自己責任でお願い致します。
※上記、18歳以上で同意できる方は入室してください。
PASS:7777
俺以外もう見なくていいぞw
【メキシコ】麻薬カルテル、ライバル組織の女を拘束、手足を縛り生きたまま解体 - 18禁グロ
▼カテゴリ - 18禁グロには一部、異様・奇怪・猟奇的・暴力シーン・グロテスクな表現が含まれていますので、閲覧制限をしています。
1. 18歳未満は閲覧禁止です。
2. 耐性が無い方は閲覧しないでください。
3. 閲覧は自己責任でお願い致します。
※上記、18歳以上で同意できる方は入室してください。
PASS:7777
702デフォルトの名無しさん
2020/07/27(月) 21:36:02.69ID:2I3xUck9 例えばパスワードとかで、エンター押したら実行するよーにするにはどーしたらいんかね?
703デフォルトの名無しさん
2020/07/27(月) 21:45:23.89ID:GH3PnKGv <form action="〜" method="post">
<input type="password" name="pass">
<input type="submit">
</form>
<input type="password" name="pass">
<input type="submit">
</form>
704デフォルトの名無しさん
2020/07/27(月) 22:05:10.71ID:P2Gsimd7 HTML, CSS, JavaScript の質問は、web制作管理板で聞いてください!
この板のスレは、荒らしが出た時に、緊急避難用に一時的に立てたものなので
この板のスレは、荒らしが出た時に、緊急避難用に一時的に立てたものなので
705デフォルトの名無しさん
2020/07/27(月) 22:09:15.60ID:2I3xUck9 >>704
ごめんなちゃい
ごめんなちゃい
706デフォルトの名無しさん
2020/07/27(月) 22:11:54.64ID:fnBRfBHK いいってことよ
707デフォルトの名無しさん
2020/07/27(月) 23:32:47.58ID:QhcinMDB そういやあっちどうなってんのかな?って思って見てみたが、
>>595ってマルチポストをこっちに収斂したのかよ!
https://mevius.5ch.net/test/read.cgi/hp/1568714120/471
thisが何か分からないレベルの奴は永久にWeb板に引きこもってろ。
というか、お前ら何がやりたいんだ?
全部初心者スレにするから、お前らも完全に知ってるくだらない話題につき合わないといけないわけであって、
そんなスレばかりではお前らにとってもメリットが無いだろ。
他人の手助けをするのはいいが、手助けばかりして自身が成長できないようなら意味無いだろ。
今回のは完全にjQuery廚が悪いようだが。
jQuery厨も結局全く成長しておらず、俺の最初の話が全く通じてないのもかなり酷い。
それで向こうでブッ叩かれたからってこっちに来るのは迷惑でしかないから止めてくれ。
お前(jQuery厨)の問題は、前から言ってるが、書いてるコードの規模が小さすぎる事だ。
少し大きなのを書けば、俺が言ってるように、イベントハンドラが単発の単純な関数で終わることはなくなって、
共通変数/関数をどこに配置すべきかを考えるようになるんだよ。
お前はそこにすら至ってないから俺が何を言っているのかさっぱり理解出来ない。
そして一行で書ける関数に異様に拘るわけだ。
>>595ってマルチポストをこっちに収斂したのかよ!
https://mevius.5ch.net/test/read.cgi/hp/1568714120/471
thisが何か分からないレベルの奴は永久にWeb板に引きこもってろ。
というか、お前ら何がやりたいんだ?
全部初心者スレにするから、お前らも完全に知ってるくだらない話題につき合わないといけないわけであって、
そんなスレばかりではお前らにとってもメリットが無いだろ。
他人の手助けをするのはいいが、手助けばかりして自身が成長できないようなら意味無いだろ。
今回のは完全にjQuery廚が悪いようだが。
jQuery厨も結局全く成長しておらず、俺の最初の話が全く通じてないのもかなり酷い。
それで向こうでブッ叩かれたからってこっちに来るのは迷惑でしかないから止めてくれ。
お前(jQuery厨)の問題は、前から言ってるが、書いてるコードの規模が小さすぎる事だ。
少し大きなのを書けば、俺が言ってるように、イベントハンドラが単発の単純な関数で終わることはなくなって、
共通変数/関数をどこに配置すべきかを考えるようになるんだよ。
お前はそこにすら至ってないから俺が何を言っているのかさっぱり理解出来ない。
そして一行で書ける関数に異様に拘るわけだ。
708デフォルトの名無しさん
2020/07/27(月) 23:33:18.10ID:QhcinMDB 俺はその上の「構成」について現在の俺なりの考えを述べた。
食いついてくるかどうかは君らの勝手だが、俺が思うに、今の君らに必要なのはここだと思うんだよ。
だから先鞭を付けてみたわけだ。
俺的区分で
初心者:一通り分かってなくて苦労してるレベル
中級者:一通り抑えているから、動けばいいのなら何とでも出来るレベル
上級者:最初からほぼ最適な構造で構成出来るレベル
として、Web板の連中にも中級者はそこそこ居るからおそらく中級者スレは回せる。
だとすればお前らが今やるべきは『中級者スレを建設して回すこと』であって、そこでは、
1. 文法事項の質問は初心者スレでやれ
2. 妥当な実装方法が複数ある場合、どう使い分けるべきかを議論
3. オレオレ的カッコイイ構成を披露、どうだカッコイイだろ!とやって糞ならブッ叩かれて改修点を回収
とかなんだよ。今回で言えば、イベントの捕捉方法には代表して2つのやり方があるが、
1. Elementに直接onXXX または addEventListener で捕捉
2. bubbleしてきたイベントを親で捕捉
このどちらをどう使い分けるか、ということ。
そして俺はもう「bubble主体で組む方が断然いい」と結論を出してしまっているからそれを書いた。
そんなん当たり前、と思っているのなら無視でいいが、「そうじゃない!」と思ってるのなら食いついてくるべきだし、
それ以前の「どう使い分ければいいの?」と思っているのなら、『中級者スレ』を建設して、
その中で君ら同士で喧々諤々やるべきなんだよ。
勿論リアルでやれてればそれが一番いいんだけど、リアルでは言いにくかったりするんだろ?
だったらそれが君らが上達する一つの真っ当な方策だよ。
そしてそこでは一通りも書けないレベル、つまり文法事項を一通り抑えてない奴は別スレで、でいいんだよ。
そんな奴混じっても邪魔でしかないだろ。
食いついてくるかどうかは君らの勝手だが、俺が思うに、今の君らに必要なのはここだと思うんだよ。
だから先鞭を付けてみたわけだ。
俺的区分で
初心者:一通り分かってなくて苦労してるレベル
中級者:一通り抑えているから、動けばいいのなら何とでも出来るレベル
上級者:最初からほぼ最適な構造で構成出来るレベル
として、Web板の連中にも中級者はそこそこ居るからおそらく中級者スレは回せる。
だとすればお前らが今やるべきは『中級者スレを建設して回すこと』であって、そこでは、
1. 文法事項の質問は初心者スレでやれ
2. 妥当な実装方法が複数ある場合、どう使い分けるべきかを議論
3. オレオレ的カッコイイ構成を披露、どうだカッコイイだろ!とやって糞ならブッ叩かれて改修点を回収
とかなんだよ。今回で言えば、イベントの捕捉方法には代表して2つのやり方があるが、
1. Elementに直接onXXX または addEventListener で捕捉
2. bubbleしてきたイベントを親で捕捉
このどちらをどう使い分けるか、ということ。
そして俺はもう「bubble主体で組む方が断然いい」と結論を出してしまっているからそれを書いた。
そんなん当たり前、と思っているのなら無視でいいが、「そうじゃない!」と思ってるのなら食いついてくるべきだし、
それ以前の「どう使い分ければいいの?」と思っているのなら、『中級者スレ』を建設して、
その中で君ら同士で喧々諤々やるべきなんだよ。
勿論リアルでやれてればそれが一番いいんだけど、リアルでは言いにくかったりするんだろ?
だったらそれが君らが上達する一つの真っ当な方策だよ。
そしてそこでは一通りも書けないレベル、つまり文法事項を一通り抑えてない奴は別スレで、でいいんだよ。
そんな奴混じっても邪魔でしかないだろ。
709デフォルトの名無しさん
2020/07/27(月) 23:34:59.54ID:QhcinMDB で、ここで問題になるのがいわゆる「意識高い系」という言い方で、最近これについてネットでも反省してる奴が散見されるが、
正直俺はどちらの意見もイマイチ賛同出来ないのだな。
多分上記のように「一定以下の奴は切り捨てる」を公言すると「意識高い系ガー」と無駄に攻撃される。
これは、人は誰でも置いて行かれるのは不快なものだし、人数も初心者>>>中級者なのは常だから、
「初心者が中級者を攻撃する便利なキーワード」として『意識高い系』が出来たからそれを使う奴は一定の割合で出てくる。
それで結果的に芽を摘み(=集団を上に引っ張れる奴を挫き)、結果的に糞しかなくなってる、というのが反省の中身だ。
ただ俺はこれもイマイチしっくり来ない。ぶっちゃけ両方ゴミだな、と思っている。つまり、
ゆとり文化で「意識高い系ガー」と言って集団を下に引っ張るのも糞だが、
そもそも「意識高い系」の連中も「俺達は高い=お前らは低い」という、
無駄に見下す事をしてきた(正確にはそういう奴が多い)から嫌われてると思う。
そもそもネット以前のオタク(プログラマ含む)は基本的に一人でやってて、
「俺スゲーだろ!」と自慢する場所も無かったから、完全に自己完結してた。
だから見下すとか、そういうのは基本的になかった。
ところが昨今は無駄に見栄を張れるようになって、食べログでも食べてもないのにレビューを書き、インスタではリア充を装ってもう疲れた、
みたいなのが沢山居るから、「スゲープログラマを装っている糞プログラマ」も多々居て、
そいつらは他人を見下す事によって己の凄さを担保するようなメンタルだから、
そんな奴等に対して「意識高いだけの糞」と言いたくなるのも分かる。
というわけでどっちも糞だな、というのが俺の見解ではある。
が、現実問題として、お前らの大学に幼稚園児が乱入してきて走りまわられても、邪魔でしかないだろ。
同様に、君らが前に進む為の場所にとって初心者が邪魔なら、普通に排除していいんだよ。
初心者の為のスレは別にあり、初心者はそこで問題ないのだから。
というのをだな、どうせ見えた展開になるだろうから、先に言っておく。
つまり、妥当ではない批判にくじけずに前に進め、ということ。
正直俺はどちらの意見もイマイチ賛同出来ないのだな。
多分上記のように「一定以下の奴は切り捨てる」を公言すると「意識高い系ガー」と無駄に攻撃される。
これは、人は誰でも置いて行かれるのは不快なものだし、人数も初心者>>>中級者なのは常だから、
「初心者が中級者を攻撃する便利なキーワード」として『意識高い系』が出来たからそれを使う奴は一定の割合で出てくる。
それで結果的に芽を摘み(=集団を上に引っ張れる奴を挫き)、結果的に糞しかなくなってる、というのが反省の中身だ。
ただ俺はこれもイマイチしっくり来ない。ぶっちゃけ両方ゴミだな、と思っている。つまり、
ゆとり文化で「意識高い系ガー」と言って集団を下に引っ張るのも糞だが、
そもそも「意識高い系」の連中も「俺達は高い=お前らは低い」という、
無駄に見下す事をしてきた(正確にはそういう奴が多い)から嫌われてると思う。
そもそもネット以前のオタク(プログラマ含む)は基本的に一人でやってて、
「俺スゲーだろ!」と自慢する場所も無かったから、完全に自己完結してた。
だから見下すとか、そういうのは基本的になかった。
ところが昨今は無駄に見栄を張れるようになって、食べログでも食べてもないのにレビューを書き、インスタではリア充を装ってもう疲れた、
みたいなのが沢山居るから、「スゲープログラマを装っている糞プログラマ」も多々居て、
そいつらは他人を見下す事によって己の凄さを担保するようなメンタルだから、
そんな奴等に対して「意識高いだけの糞」と言いたくなるのも分かる。
というわけでどっちも糞だな、というのが俺の見解ではある。
が、現実問題として、お前らの大学に幼稚園児が乱入してきて走りまわられても、邪魔でしかないだろ。
同様に、君らが前に進む為の場所にとって初心者が邪魔なら、普通に排除していいんだよ。
初心者の為のスレは別にあり、初心者はそこで問題ないのだから。
というのをだな、どうせ見えた展開になるだろうから、先に言っておく。
つまり、妥当ではない批判にくじけずに前に進め、ということ。
710デフォルトの名無しさん
2020/07/27(月) 23:35:38.29ID:QhcinMDB ちなみに君らはこんなスレでも多少沸いてくるように、周りを見ている、という点は素晴らしい。
いや、JSはそういう状況だから仕方ないのかもしれんが、
Javaは>>546のような奴が普通に居るし、これは最近はC#の連中も同様になりつつある。
で、今の君らに必要なのは、文法ではもう問題がない人同士で、
「何をどう記述すべきか」を議論することだよ。それは良い中級者スレになる。
JavaScriptは構造に対しても非常に柔軟で、それは他の型あり言語、例えばC++で同じ構造で書くのと比べて段違いに楽に書ける。
逆に言えば、いろんな構造をお試し的に書いても、他言語より同じ時間で沢山の構造を試せるから、
中級者から上級者にステップアップするには有利な言語だと思う。
問題は、JS的糞、例えばセミコロンガーに嵌ってしまう馬鹿が多い、という点であって。
いや、JSはそういう状況だから仕方ないのかもしれんが、
Javaは>>546のような奴が普通に居るし、これは最近はC#の連中も同様になりつつある。
で、今の君らに必要なのは、文法ではもう問題がない人同士で、
「何をどう記述すべきか」を議論することだよ。それは良い中級者スレになる。
JavaScriptは構造に対しても非常に柔軟で、それは他の型あり言語、例えばC++で同じ構造で書くのと比べて段違いに楽に書ける。
逆に言えば、いろんな構造をお試し的に書いても、他言語より同じ時間で沢山の構造を試せるから、
中級者から上級者にステップアップするには有利な言語だと思う。
問題は、JS的糞、例えばセミコロンガーに嵌ってしまう馬鹿が多い、という点であって。
711デフォルトの名無しさん
2020/07/28(火) 00:26:55.97ID:nl0WhoWH 一言で言えば糖質
712デフォルトの名無しさん
2020/09/12(土) 21:45:44.66ID:ybxdKypc webpackについて伺いたいんですけど、webpackは将来的には不要になるライブラリって認識は間違ってないですか?
あとbabelとかも
あとbabelとかも
713デフォルトの名無しさん
2020/10/02(金) 10:09:07.53ID:EkM/KECH WEB Components のラッパーを書きました。
公式:https://strnote.com/static/CompElem.html
ライセンスはMIT
Veu.js, React.js などより大幅に低水準なラッパーなので、そのぶん改造は楽です
公式:https://strnote.com/static/CompElem.html
ライセンスはMIT
Veu.js, React.js などより大幅に低水準なラッパーなので、そのぶん改造は楽です
714デフォルトの名無しさん
2020/10/13(火) 01:31:02.46ID:dvOlOvK/ JavaScriptの実装について知りたいんですがChromiumのソース読めばいいんでしょうか?
715デフォルトの名無しさん
2020/10/17(土) 08:56:08.19ID:N1gX0TwH716デフォルトの名無しさん
2020/10/17(土) 08:59:43.06ID:syR+vJZ+ >>715
ありがとうございますm(_ _)m
ありがとうございますm(_ _)m
717デフォルトの名無しさん
2020/11/04(水) 11:18:33.79ID:/5L/Dxz6 パラッパラッパー
718デフォルトの名無しさん
2021/03/07(日) 23:11:04.14ID:bNghcsY5 ゲームのコアライブラリ書いてるけど
async/await のお世話に頼らないと無茶だと痛感
不定個のPromise配列をパイプライン処理すんの無理だわな
async/await のお世話に頼らないと無茶だと痛感
不定個のPromise配列をパイプライン処理すんの無理だわな
719デフォルトの名無しさん
2021/03/07(日) 23:24:25.00ID:bNghcsY5 書けなくもないけど、書いてるうちにゲシュタルト崩壊起こしかけるぅ orz
720デフォルトの名無しさん
2021/06/12(土) 15:43:59.92ID:TONJAMor プロならLPIのHTML5レベル2は持ってて当たり前なのでしょうか?
721デフォルトの名無しさん
2021/06/12(土) 21:20:44.77ID:uQ7TEz17 >>720
俺はWeb系ではないが、採用条件として明示してあるのでなければ、無視でいいと思う。
一般にIT系では採用時に資格は重視されない。理由は簡単で、
・進化が早く、資格として整備された時(数年後)には既に陳腐化している。
・精々数時間で50-100問(数分/問)を課すテストで計れるのは、「知識」であって、「実力」ではない。
だから逆に言えば、ほぼ進化がなく、それなりに知識が必要だとされる分野は、資格も話題にはなってる。
これは他スレ読めば分かると思うけど、JAVA/オラクル/MS位だね。その他は全部ゴミだと思っていい。
進化も早く、知識も浅くて済むJSでは、今後とも資格は主流にはならないよ。
なおみんな「実力」は計りたがっており、テストで計れれば画期的だから、資格ビジネスも乱立するわけだが、
実際はこれは出来ない。理由はこれまた非常に簡単で、タイムスパンが全然違うから。
現代のプロのIT現場では通常の「テスト」のように、数分で完了するような仕事はない。
(その程度だとアマチュアでも問題なく出来てしまうため、今のプロには回ってこない)
人を採用するような規模の企業での実際の仕事は、数ヶ月〜1年くらいのスパンになるから、
テストで計れる「知識量」よりも、分からないことをWeb等で調べる「検索力」「応用力」、
或いは同僚に聞いたり教えたり仲良くやっていける「コミュ力」、
そしてプログラミングの本質である「設計力」が問われ、テストに比べれば時間制限なんて無いに等しい。
だから「テスト」で計ること自体がそもそも無理なんだ。
俺はWeb系ではないが、採用条件として明示してあるのでなければ、無視でいいと思う。
一般にIT系では採用時に資格は重視されない。理由は簡単で、
・進化が早く、資格として整備された時(数年後)には既に陳腐化している。
・精々数時間で50-100問(数分/問)を課すテストで計れるのは、「知識」であって、「実力」ではない。
だから逆に言えば、ほぼ進化がなく、それなりに知識が必要だとされる分野は、資格も話題にはなってる。
これは他スレ読めば分かると思うけど、JAVA/オラクル/MS位だね。その他は全部ゴミだと思っていい。
進化も早く、知識も浅くて済むJSでは、今後とも資格は主流にはならないよ。
なおみんな「実力」は計りたがっており、テストで計れれば画期的だから、資格ビジネスも乱立するわけだが、
実際はこれは出来ない。理由はこれまた非常に簡単で、タイムスパンが全然違うから。
現代のプロのIT現場では通常の「テスト」のように、数分で完了するような仕事はない。
(その程度だとアマチュアでも問題なく出来てしまうため、今のプロには回ってこない)
人を採用するような規模の企業での実際の仕事は、数ヶ月〜1年くらいのスパンになるから、
テストで計れる「知識量」よりも、分からないことをWeb等で調べる「検索力」「応用力」、
或いは同僚に聞いたり教えたり仲良くやっていける「コミュ力」、
そしてプログラミングの本質である「設計力」が問われ、テストに比べれば時間制限なんて無いに等しい。
だから「テスト」で計ること自体がそもそも無理なんだ。
722デフォルトの名無しさん
2021/06/12(土) 21:21:07.32ID:uQ7TEz17 ちなみに、何でそんな勘違いをしているのか知らんが、
・採用の際に言われたのなら、それはやるしかない。
それは最低限の知識としてそこで線を引く、ということだから。
・そうでないのなら、学んだことを学んだとおりにグダグダ言わずにやる能力=学歴だから、
勉強してマシな学歴を目指した方がいい。
勉強すれば何とかなる事柄なら、勉強が得意な奴=学歴で採用した方がいいし、
実際、企業の採用で学歴を重視されるのはこれだから。
もう学歴とかいう年齢ではないのなら、変に資格に拘るよりは、
・自分でサイトを作ってそこのコードも自分で書いて、それを見せた方がいい。
資格で計れるのは一定の知識があるかどうかだけだが、実際のサイトとコードでは、実力を示せる。
だから、採用側もやる気があれば必ず見る。(実際にWeb系の奴等もこれは言ってる)
まあ少なくとも、テストや資格で実力が計れる、なんて思ってるIT系の奴は一人もいないから、
IT系の資格ゴテゴテの奴が来たりすると逆に引かれると思うから、それは止めとけ。
・採用の際に言われたのなら、それはやるしかない。
それは最低限の知識としてそこで線を引く、ということだから。
・そうでないのなら、学んだことを学んだとおりにグダグダ言わずにやる能力=学歴だから、
勉強してマシな学歴を目指した方がいい。
勉強すれば何とかなる事柄なら、勉強が得意な奴=学歴で採用した方がいいし、
実際、企業の採用で学歴を重視されるのはこれだから。
もう学歴とかいう年齢ではないのなら、変に資格に拘るよりは、
・自分でサイトを作ってそこのコードも自分で書いて、それを見せた方がいい。
資格で計れるのは一定の知識があるかどうかだけだが、実際のサイトとコードでは、実力を示せる。
だから、採用側もやる気があれば必ず見る。(実際にWeb系の奴等もこれは言ってる)
まあ少なくとも、テストや資格で実力が計れる、なんて思ってるIT系の奴は一人もいないから、
IT系の資格ゴテゴテの奴が来たりすると逆に引かれると思うから、それは止めとけ。
723デフォルトの名無しさん
2021/06/12(土) 23:41:34.70ID:TONJAMor 返信ありがとうございます。
724デフォルトの名無しさん
2021/06/13(日) 11:51:30.32ID:DaJnimMO725721
2021/06/13(日) 13:42:06.32ID:dsZW3Lb4 嘘くせー。
こう言うとキレられるのだろうけど、敢えて言っとく。
資格ビジネスでは受験者数が利益に直結するので、胴元連中は当然「すばらしい」と吹聴してるが、全部嘘だ。
実際は、「会社の連中はほとんど持ってる」のなら、その資格を持っていたところで「引く手あまた」なんて事にはならない。
むしろ「足切り」に使われるべきであるが、正直、これもない。
同様に「会社の連中は殆ど持ってる」のなら、現状どおりの採用活動でその程度の連中は十分に確保出来てる、ということだから。
そもそもそんな簡単に取れる資格で「引く手あまた」なんて事にはなり得ないし、
ググったところ360時間程度と書いてる奴が居るが、なら「半年も実務すれば余裕」って事だから、わざわざ取る価値もない。
(誰でも取れるような資格なんて意味がない)
それ以前に、会社の連中なんてそんな真面目じゃない。
もっとまともなTOEICですら自前で受ける奴なんて皆無で、昇進時に最低○○点が必要だからとか、社員は全員一律に、だから受けてるのであって、
わざわざ誰でも取れるような資格を取りに行くような連中はただの資格コレクターであり、ヤベェ連中だよ。
だから逆に言えば、この手の資格でも取らせないと勉強しない連中が多いから、報奨金を出す会社もあるようだ。
まあこれは人事戦略としては正しいのだが、そもそもWeb系って人事すら居ない規模の会社が多いだろ。
こう言うとキレられるのだろうけど、敢えて言っとく。
資格ビジネスでは受験者数が利益に直結するので、胴元連中は当然「すばらしい」と吹聴してるが、全部嘘だ。
実際は、「会社の連中はほとんど持ってる」のなら、その資格を持っていたところで「引く手あまた」なんて事にはならない。
むしろ「足切り」に使われるべきであるが、正直、これもない。
同様に「会社の連中は殆ど持ってる」のなら、現状どおりの採用活動でその程度の連中は十分に確保出来てる、ということだから。
そもそもそんな簡単に取れる資格で「引く手あまた」なんて事にはなり得ないし、
ググったところ360時間程度と書いてる奴が居るが、なら「半年も実務すれば余裕」って事だから、わざわざ取る価値もない。
(誰でも取れるような資格なんて意味がない)
それ以前に、会社の連中なんてそんな真面目じゃない。
もっとまともなTOEICですら自前で受ける奴なんて皆無で、昇進時に最低○○点が必要だからとか、社員は全員一律に、だから受けてるのであって、
わざわざ誰でも取れるような資格を取りに行くような連中はただの資格コレクターであり、ヤベェ連中だよ。
だから逆に言えば、この手の資格でも取らせないと勉強しない連中が多いから、報奨金を出す会社もあるようだ。
まあこれは人事戦略としては正しいのだが、そもそもWeb系って人事すら居ない規模の会社が多いだろ。
726721
2021/06/13(日) 13:42:40.11ID:dsZW3Lb4 だからまあ、>>724が本当だとすると、
「あの程度が取れない奴はヤバい」ってことで、入社1年目の目標、2年目では義務、という雰囲気にして、
結果的に全員受験させて底上げ(最低限度の知識の確保)を目指すのは、人事戦略としては一見ありのように見えるが、
しかし実際に落ちた奴が居たとして、クビも切れないのなら虐めるネタにしかならないだろ。
だから、全員受かるか、落ちた奴をいびり倒して辞めさせるか出来ないと、余計に悲惨なことになる。
だからあんまりこれもないと思うんだよね。
まあいずれにしても、資格ビジネスをやってる奴は居るし、連中は都合のいいブログとかもデタラメに書きまくってるから、そういうのに騙されないように。
ドラッグストアの薬剤師のように、その資格がないとHTML5を取り扱ってはいけないのならみんな取るけど、
そうじゃないのだから取得するモチベーションも普通はないんだよ。
「あの程度が取れない奴はヤバい」ってことで、入社1年目の目標、2年目では義務、という雰囲気にして、
結果的に全員受験させて底上げ(最低限度の知識の確保)を目指すのは、人事戦略としては一見ありのように見えるが、
しかし実際に落ちた奴が居たとして、クビも切れないのなら虐めるネタにしかならないだろ。
だから、全員受かるか、落ちた奴をいびり倒して辞めさせるか出来ないと、余計に悲惨なことになる。
だからあんまりこれもないと思うんだよね。
まあいずれにしても、資格ビジネスをやってる奴は居るし、連中は都合のいいブログとかもデタラメに書きまくってるから、そういうのに騙されないように。
ドラッグストアの薬剤師のように、その資格がないとHTML5を取り扱ってはいけないのならみんな取るけど、
そうじゃないのだから取得するモチベーションも普通はないんだよ。
727721
2021/06/13(日) 15:18:32.08ID:dsZW3Lb4 が、まあ、見ずに文句ばかり言うのもアレなんで、一応サンプル問題もチラッと見てみたが、糞だな。
これ知っててどうする?とか、こんなの覚えてる意味無いだろ、とか、そういうのばっかりだ。
ただまあ、IT系の資格って、どれもこれもこの手の糞なのも事実。
それは政府がやってるのも全部含めてだから、そもそもプログラミングが試験に向いてないんだよ。
勿論問題を作ってる馬鹿共が実はプログラマじゃないってのも大きいにしても。
実際は、新しい仕様はガンガン追加されるから、勉強してた頃には存在してなかった物に普通に遭遇することになる。
だから、覚えていることよりは、調べて正しく判断出来るかの方が重要で、
このテスト自体はCBTだからMDNを読みながら回答するのもありなのだろうけど、
実際はそれでは間に合わないのだろうし、やはり、よろしくはないね。
とはいえ、テストでプログラミングの実力を計りたいってのは需要はあるし、永遠の課題でもある。
俺はプログラミングはcraft(工芸、手技)に近く、テストしたければ絵と同様「実技」(絵ならデッサン)でやるしかないと思うけど、
これはプログラミングはknowledge(知識)であると考える奴(=この手のテストを作るような奴)には受け入れがたい思想なんだよ。
だからこんな感じに、昔からなってる。
ああそういえばgoogleは入社テストに実技を課すらしいぜ。
> 一次面接は電話で技術的質問をされました。二次面接は電話で会話をしながら、オンライン共有されたドキュメントにいくつかコードを書きました。
> https://note.com/neko_chan0214/n/n3a64bc1e1412
つまり電話品質の英語を聞き取れるかどうか、そこで「○○を修正してくれ」と指示出して的確にコードが修正されるか、を見てるわけだが、
極めて妥当だよね。これに問題なければリモートワークの下っ端としては十分なんだから、雇う分に問題はない。
(googleの場合は要らなくなったら簡単にクビも切れるし。なお就職後の本人は「思ってたのと違う」と萎えてたらしいが、よくは知らん)
これ知っててどうする?とか、こんなの覚えてる意味無いだろ、とか、そういうのばっかりだ。
ただまあ、IT系の資格って、どれもこれもこの手の糞なのも事実。
それは政府がやってるのも全部含めてだから、そもそもプログラミングが試験に向いてないんだよ。
勿論問題を作ってる馬鹿共が実はプログラマじゃないってのも大きいにしても。
実際は、新しい仕様はガンガン追加されるから、勉強してた頃には存在してなかった物に普通に遭遇することになる。
だから、覚えていることよりは、調べて正しく判断出来るかの方が重要で、
このテスト自体はCBTだからMDNを読みながら回答するのもありなのだろうけど、
実際はそれでは間に合わないのだろうし、やはり、よろしくはないね。
とはいえ、テストでプログラミングの実力を計りたいってのは需要はあるし、永遠の課題でもある。
俺はプログラミングはcraft(工芸、手技)に近く、テストしたければ絵と同様「実技」(絵ならデッサン)でやるしかないと思うけど、
これはプログラミングはknowledge(知識)であると考える奴(=この手のテストを作るような奴)には受け入れがたい思想なんだよ。
だからこんな感じに、昔からなってる。
ああそういえばgoogleは入社テストに実技を課すらしいぜ。
> 一次面接は電話で技術的質問をされました。二次面接は電話で会話をしながら、オンライン共有されたドキュメントにいくつかコードを書きました。
> https://note.com/neko_chan0214/n/n3a64bc1e1412
つまり電話品質の英語を聞き取れるかどうか、そこで「○○を修正してくれ」と指示出して的確にコードが修正されるか、を見てるわけだが、
極めて妥当だよね。これに問題なければリモートワークの下っ端としては十分なんだから、雇う分に問題はない。
(googleの場合は要らなくなったら簡単にクビも切れるし。なお就職後の本人は「思ってたのと違う」と萎えてたらしいが、よくは知らん)
728721
2021/06/13(日) 20:17:57.82ID:dsZW3Lb4 >>720
駄目押しで言っておくと、こんな過疎っているところでそんなアンケートなんてやらないことだよ。
そんなことを聞く=自分で判断する能力がないって事だから、
デタラメなら突っ込まれる程度の人数が居る場所でないと嘘を吹き込まれてしまう。
(どうしても5chでやりたければマ板か嫌儲かな?)
俺は競プロや今回のプログラミング資格のような、
「ちょっと勉強して○○を取得するだけで人生バラ色」を吹聴している連中は基本的に詐欺師だと見てる。
だから我慢がならない。これがグダグダ言ってる理由。
>>724 が胴元の自演の可能性すらあるわけだし。
ただ、普通に考えれば分かる筈なんだけどね。
ITドカタがブラックだと言われて久しい。
(5ch発の例の「ブラック会社に勤めてるんだが、もう俺は限界かもしれない」もそれ)
だからそんな、精々数百時間の勉強で抜け出せる方法があるのなら、みんなやってるよ。
それ以前からある基本情報技術者とかでも、そんな都合のいい話は無いだろ。
学歴にしたって、3-6年間頑張って勉強してもままならないからこそ、それなりの価値があるわけであって。
現在、SESとかプログラミングスクールも乱立してて、
彼等は「プログラミングスクールに通って資格を取ってSESに入ればバラ色」と言うわけだけど、全部嘘だから。
だからどこでそんな資格のことを聞いたのかは知らんが、とにかく止めとけ。
既にプログラマとしてやってて、趣味で資格を集めてるのならどうぞ御勝手にだが、
わざわざ尋ねる=現在はプログラマではないのであれば、
技術レベルの保証にもならず、勉強したところで実力にもならない資格に対して、エネルギーを注ぐべきではない。
問題も、サイトを作って動かしてみれば普通に分かるだろ、程度の物でしかないから、
実際に手を動かしてサイトを作って、それを示した方がいい。
(ただしゆとりは絶対にこれをやらず、
「手を動かさずに効率的に学ぶのだ!」みたいな妙な信仰があるのも事実だし、
ぞれ以前に、ゆとりは上記の「普通に考える」を全くやらないのが問題なわけだが)
駄目押しで言っておくと、こんな過疎っているところでそんなアンケートなんてやらないことだよ。
そんなことを聞く=自分で判断する能力がないって事だから、
デタラメなら突っ込まれる程度の人数が居る場所でないと嘘を吹き込まれてしまう。
(どうしても5chでやりたければマ板か嫌儲かな?)
俺は競プロや今回のプログラミング資格のような、
「ちょっと勉強して○○を取得するだけで人生バラ色」を吹聴している連中は基本的に詐欺師だと見てる。
だから我慢がならない。これがグダグダ言ってる理由。
>>724 が胴元の自演の可能性すらあるわけだし。
ただ、普通に考えれば分かる筈なんだけどね。
ITドカタがブラックだと言われて久しい。
(5ch発の例の「ブラック会社に勤めてるんだが、もう俺は限界かもしれない」もそれ)
だからそんな、精々数百時間の勉強で抜け出せる方法があるのなら、みんなやってるよ。
それ以前からある基本情報技術者とかでも、そんな都合のいい話は無いだろ。
学歴にしたって、3-6年間頑張って勉強してもままならないからこそ、それなりの価値があるわけであって。
現在、SESとかプログラミングスクールも乱立してて、
彼等は「プログラミングスクールに通って資格を取ってSESに入ればバラ色」と言うわけだけど、全部嘘だから。
だからどこでそんな資格のことを聞いたのかは知らんが、とにかく止めとけ。
既にプログラマとしてやってて、趣味で資格を集めてるのならどうぞ御勝手にだが、
わざわざ尋ねる=現在はプログラマではないのであれば、
技術レベルの保証にもならず、勉強したところで実力にもならない資格に対して、エネルギーを注ぐべきではない。
問題も、サイトを作って動かしてみれば普通に分かるだろ、程度の物でしかないから、
実際に手を動かしてサイトを作って、それを示した方がいい。
(ただしゆとりは絶対にこれをやらず、
「手を動かさずに効率的に学ぶのだ!」みたいな妙な信仰があるのも事実だし、
ぞれ以前に、ゆとりは上記の「普通に考える」を全くやらないのが問題なわけだが)
729デフォルトの名無しさん
2021/06/13(日) 21:58:17.40ID:dsZW3Lb4 ちなみにどれだけ酷いかを一応言っておくとだな、サイトは以下で
https://www.html5exam.jp/measures/sample.html
https://www.html5exam.jp/measures/lv2_1.html
第一問:
obj.key-sampleってのが最悪で、そもそもチェインケースはJSというかプログラミング言語一般で使わない。(使えない)
だから最初何が言いたいのか分からなかった。
ただしHTMLには入ってしまっているのでそこはキャメルケース、つまりkeySampleにすることになってる。
だから普通ではあり得ない状況をわざわざ作ってるんだよこれは。
文法の細かい隅を付く為だけど、そもそもそういう使い方はしないようにコーディングルールが制定されてるはず。
マジで、JSでチェインケースを常用してる馬鹿なんて見たことがない。
第二問:
console.log(typeof [1, 2] + typeof null); もおかしくて、普通は
console.log(a, b); とか、コンマ区切りで出力させた方が断然いいから、こんなの知っておく意味はない。
typeof [] === 'object' と
typeof null === 'object' 、特に後者はJSでの実装ミス(仕様バグ)だから知っておく必要はあるけど、だから何?程度。
本当はtypeofを多用すること自体がプログラミング理論的には間違いだとされつつあるので、
Rustみたいに「型スイッチ撲滅しようぜ」ってノリの方が正しい。この場合こんなもん知らなくてもいいし。
とまあ、こんな問題出してて出題者は誰々です!っていわれてる方がヤベーんじゃねえの?と思うレベル。
その他もざっくり見たけど同様だよ。
ただしまあ、初心者あるある集ではあるのかもしれんが。
https://www.html5exam.jp/measures/sample.html
https://www.html5exam.jp/measures/lv2_1.html
第一問:
obj.key-sampleってのが最悪で、そもそもチェインケースはJSというかプログラミング言語一般で使わない。(使えない)
だから最初何が言いたいのか分からなかった。
ただしHTMLには入ってしまっているのでそこはキャメルケース、つまりkeySampleにすることになってる。
だから普通ではあり得ない状況をわざわざ作ってるんだよこれは。
文法の細かい隅を付く為だけど、そもそもそういう使い方はしないようにコーディングルールが制定されてるはず。
マジで、JSでチェインケースを常用してる馬鹿なんて見たことがない。
第二問:
console.log(typeof [1, 2] + typeof null); もおかしくて、普通は
console.log(a, b); とか、コンマ区切りで出力させた方が断然いいから、こんなの知っておく意味はない。
typeof [] === 'object' と
typeof null === 'object' 、特に後者はJSでの実装ミス(仕様バグ)だから知っておく必要はあるけど、だから何?程度。
本当はtypeofを多用すること自体がプログラミング理論的には間違いだとされつつあるので、
Rustみたいに「型スイッチ撲滅しようぜ」ってノリの方が正しい。この場合こんなもん知らなくてもいいし。
とまあ、こんな問題出してて出題者は誰々です!っていわれてる方がヤベーんじゃねえの?と思うレベル。
その他もざっくり見たけど同様だよ。
ただしまあ、初心者あるある集ではあるのかもしれんが。
730デフォルトの名無しさん
2021/06/16(水) 17:15:31.15ID:V9AslF47731デフォルトの名無しさん
2021/12/28(火) 16:40:18.70ID:ChI3TD7z JavaScript classes are still the same as before,
except that the super keyword has been added internally.
Therefore, what you couldn't do before, you still can't do now.
Some people say that class definitions can be used to create code that is easy
to understand, but
However, I am not sure if it is easy
to understand for anyone.
I also feel that hiding the prototype makes it harder
for beginners to understand the essence of JavaScript.
You have to understand what kind of replacement the class syntax is internally
before you can learn it.
It's not a good way to learn.
But once you understand it,
I don't think there's any need to bother using classes.
Translated with www.DeepL.com/Translator (free version)
except that the super keyword has been added internally.
Therefore, what you couldn't do before, you still can't do now.
Some people say that class definitions can be used to create code that is easy
to understand, but
However, I am not sure if it is easy
to understand for anyone.
I also feel that hiding the prototype makes it harder
for beginners to understand the essence of JavaScript.
You have to understand what kind of replacement the class syntax is internally
before you can learn it.
It's not a good way to learn.
But once you understand it,
I don't think there's any need to bother using classes.
Translated with www.DeepL.com/Translator (free version)
732デフォルトの名無しさん
2021/12/28(火) 18:47:52.24ID:JyRJ6HRN それだけの長文を連投する情熱ってどこから発生するの?
733デフォルトの名無しさん
2022/09/04(日) 10:45:48.62ID:gMMLSyjY JavaScriptの正規表現後読みのブラウザ対応表が(ずいぶん前から)MDNから落ちているのだけど、
何処かに有れば教えてくれ。(下記ページ内、ブラウザサポート部分)
https://developer.mozilla.org/ja/docs/Web/JavaScript/Guide/Regular_Expressions/Assertions
これchrome以外は全然駄目で見捨てられてるのか?
何処かに有れば教えてくれ。(下記ページ内、ブラウザサポート部分)
https://developer.mozilla.org/ja/docs/Web/JavaScript/Guide/Regular_Expressions/Assertions
これchrome以外は全然駄目で見捨てられてるのか?
734デフォルトの名無しさん
2022/09/04(日) 12:37:49.60ID:FTTWPGH/ >>733
https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/RegExp
のlookbehind assertions。safariが未対応
https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/RegExp
のlookbehind assertions。safariが未対応
735デフォルトの名無しさん
2022/09/04(日) 13:19:42.31ID:gMMLSyjY >>734
ありがとう。助かりました。てかそっちに纏めてるのか。
ありがとう。助かりました。てかそっちに纏めてるのか。
736デフォルトの名無しさん
2022/11/30(水) 14:57:54.07ID:puhqr6nn ぼやき
MDN見て、セレクトボックスで beforeinput イベントを使おうとして、試してみたら発火しない
なんでだーと思ったら英語版には beforeinput イベントは input と textarea だと書いてあった
日本語訳の select が誤記載だったというオチ
登録してまで指摘投げる気はないので、編集できる人がここ見たらそのうち修正されるかなあと書き込み
MDN見て、セレクトボックスで beforeinput イベントを使おうとして、試してみたら発火しない
なんでだーと思ったら英語版には beforeinput イベントは input と textarea だと書いてあった
日本語訳の select が誤記載だったというオチ
登録してまで指摘投げる気はないので、編集できる人がここ見たらそのうち修正されるかなあと書き込み
737デフォルトの名無しさん
2022/11/30(水) 15:16:11.94ID:G0TyVVXA738デフォルトの名無しさん
2022/11/30(水) 15:25:02.52ID:G0TyVVXA739デフォルトの名無しさん
2022/11/30(水) 15:34:48.91ID:G0TyVVXA >>732
他人と少しでも仕事したことあるなら言いたくなることもあるだろう
他人と少しでも仕事したことあるなら言いたくなることもあるだろう
740デフォルトの名無しさん
2022/12/21(水) 19:56:54.56ID:ZLSsY0as ブラウザ上で
別タブでページ開く→開いたページ操作→ページ全体あるいはDOMツリーの一部をスクショ
って可能ですかね?
素直にパペッター使った方がいいかな?
別タブでページ開く→開いたページ操作→ページ全体あるいはDOMツリーの一部をスクショ
って可能ですかね?
素直にパペッター使った方がいいかな?
741デフォルトの名無しさん
2022/12/21(水) 20:53:36.23ID:YF8SK8D8 >>740
今ググって知ったレベルだが、html2canvas使えば出来るらしい。
ただ、別タブを操作するには、そのページ内でJSを動かすかブラウザ拡張とかにしないといけない。
意味不明なら、意味が分かる方(=Puppeteer)を使う方が早いのではないかと。
自分がスクショ取りたいだけなら何でもいいし。
ユーザーにそのページのスクショ採らせて送らせる、というのならJSだが、
html2canvasはブラウザのレンダリングと異なることもあるらしいので。
(と言うほど問題ないのだろうし、見れば差異は分かるからデバッグ用途には十分だが)
今ググって知ったレベルだが、html2canvas使えば出来るらしい。
ただ、別タブを操作するには、そのページ内でJSを動かすかブラウザ拡張とかにしないといけない。
意味不明なら、意味が分かる方(=Puppeteer)を使う方が早いのではないかと。
自分がスクショ取りたいだけなら何でもいいし。
ユーザーにそのページのスクショ採らせて送らせる、というのならJSだが、
html2canvasはブラウザのレンダリングと異なることもあるらしいので。
(と言うほど問題ないのだろうし、見れば差異は分かるからデバッグ用途には十分だが)
742デフォルトの名無しさん
2022/12/21(水) 22:22:38.47ID:TTkvZ9O6743デフォルトの名無しさん
2022/12/24(土) 18:22:53.96ID:DZHz5J2C 高精度タイマ(performance.now())の精度を上げる(落とさない)オプションを知ってたら教えてくれ。
他のスレ見ててCORS回避のオプションがあることを初めて知った。
https://mevius.5ch.net/test/read.cgi/tech/1659855460/472
なら高精度タイマの精度を落とさないオプションも多分あると思って探したが、辿り着けない。
今見つけた限りで、一番多い一覧があったサイトは以下。
https://peter.sh/experiments/chromium-command-line-switches/
他のスレ見ててCORS回避のオプションがあることを初めて知った。
https://mevius.5ch.net/test/read.cgi/tech/1659855460/472
なら高精度タイマの精度を落とさないオプションも多分あると思って探したが、辿り着けない。
今見つけた限りで、一番多い一覧があったサイトは以下。
https://peter.sh/experiments/chromium-command-line-switches/
744デフォルトの名無しさん
2022/12/26(月) 03:08:30.89ID:qg5Yi6nt745デフォルトの名無しさん
2023/03/04(土) 11:08:58.95ID:BmFTVnYF JSの条件式はifを使わなくても色々書けて楽しい。
746デフォルトの名無しさん
2024/03/03(日) 21:51:15.73ID:BcWORH9H747デフォルトの名無しさん
2024/03/03(日) 23:23:16.95ID:7fNlciS5748デフォルトの名無しさん
2024/03/03(日) 23:42:51.53ID:BcWORH9H >>747
早速ありがとう。助かります。
つか、RegExp等のページ先頭でアナウンスしてる「正規表現について…」が"Guide"行きで、
この"Reference"に繋がってるリンクがないんだな。だから俺はGuide側で迷子になってた。
早速ありがとう。助かります。
つか、RegExp等のページ先頭でアナウンスしてる「正規表現について…」が"Guide"行きで、
この"Reference"に繋がってるリンクがないんだな。だから俺はGuide側で迷子になってた。
749デフォルトの名無しさん
2024/03/19(火) 11:12:20.58ID:N0+FD4yc if () {}やfor () {}など}の後に;をつける人ってどれくらいいるんだろう?
ESLintの警告でやったほうがいいのかなぁと思ったり思わなかったり
ESLintの警告でやったほうがいいのかなぁと思ったり思わなかったり
750デフォルトの名無しさん
2024/03/19(火) 13:05:44.14ID:d3TWJjaW >>749
> }の後に;をつける人
C/C++/C#/Java等、セミコロン省略禁止の言語でもそこに付ける奴はいない。
つかお前根本的に勘違いしてるからきちんと確認しろ。
そしてその程度ならどっちでもいいからさっさと次に進め。
セミコロンを打つ打たないに拘り始めたら無駄に足踏みして上達しなくなる。
絵を描くのが目的なのに、鉛筆の削り方に拘りすぎて絵を描かなくなるようなものだ。
コードも同様、書いて動かしての反復で上達するのであって、書かないのではどうにもならない。
(書く前に考えろ、というのはあるが、今のお前はそのレベルに達してない)
通常はリンターの警告を全部無くすようにする。
これはリンター製作者がお前よりJSに詳しいという仮定だ。
少なくとも分かるようになってリンター製作者の思惑も見えてきてウザくなるまではそうするべき。
そもそも警告が出てる箇所を間違ってると思うから、まずお前は全部リンターに従うべきだろうよ。
> }の後に;をつける人
C/C++/C#/Java等、セミコロン省略禁止の言語でもそこに付ける奴はいない。
つかお前根本的に勘違いしてるからきちんと確認しろ。
そしてその程度ならどっちでもいいからさっさと次に進め。
セミコロンを打つ打たないに拘り始めたら無駄に足踏みして上達しなくなる。
絵を描くのが目的なのに、鉛筆の削り方に拘りすぎて絵を描かなくなるようなものだ。
コードも同様、書いて動かしての反復で上達するのであって、書かないのではどうにもならない。
(書く前に考えろ、というのはあるが、今のお前はそのレベルに達してない)
通常はリンターの警告を全部無くすようにする。
これはリンター製作者がお前よりJSに詳しいという仮定だ。
少なくとも分かるようになってリンター製作者の思惑も見えてきてウザくなるまではそうするべき。
そもそも警告が出てる箇所を間違ってると思うから、まずお前は全部リンターに従うべきだろうよ。
751デフォルトの名無しさん
2024/03/19(火) 13:35:59.75ID:d3TWJjaW >>749
と思ったが、もしかしてPythonやRuby等、セミコロン書かない言語の出身か?
ならJSの文法がユルイ所は全部無視して、さっさと進めばいい。
一応セミコロン書かない派閥もあるし、そのコーディングルールもある。
(ESLintもno-unexpected-multiline指定でセミコロン無しルールで動くらしい)
リンターを通すのが目的ではなく、アプリケーション開発の生産性を上げる為にリンターを通すのだから、
自分が書き慣れたスタイルで行くべき。
(ただそこに引っかかる程度ならお前はまずセミコロン必須言語で修行すべきとも思うが)
と思ったが、もしかしてPythonやRuby等、セミコロン書かない言語の出身か?
ならJSの文法がユルイ所は全部無視して、さっさと進めばいい。
一応セミコロン書かない派閥もあるし、そのコーディングルールもある。
(ESLintもno-unexpected-multiline指定でセミコロン無しルールで動くらしい)
リンターを通すのが目的ではなく、アプリケーション開発の生産性を上げる為にリンターを通すのだから、
自分が書き慣れたスタイルで行くべき。
(ただそこに引っかかる程度ならお前はまずセミコロン必須言語で修行すべきとも思うが)
752デフォルトの名無しさん
2024/04/15(月) 17:37:52.87ID:O2slytZi ESLintで思い出したが最近大型更新されたけどWebでチェックできる https://eslint.org/play は大幅に機能が減ったね
BrowserやGreasemonkey用のconfigが消えてて残念
BrowserやGreasemonkey用のconfigが消えてて残念
753デフォルトの名無しさん
2024/04/28(日) 21:54:09.25ID:zlR73q8o スレ立てあらしスクリプト対抗age
754デフォルトの名無しさん
2025/04/28(月) 02:23:16.87ID:uRHbhPe6 ここ1か月くらいYoutube APIで視聴回数(viewCount)が取得できないYoutubeアカウントが散見されるのですが
原因分かる方います?数値が入らず空で返って来ます。登録者数や動画本数は取得できています。
原因分かる方います?数値が入らず空で返って来ます。登録者数や動画本数は取得できています。
755デフォルトの名無しさん
2025/04/28(月) 10:11:06.09ID:AuNLagCl {この中の最後に;}をつけない人は気になるな
756デフォルトの名無しさん
2025/04/28(月) 12:30:10.45ID:04dLWA6z セミコロンハラスメントの可能性がある。
↑
例)マルハラ
↑
例)マルハラ
757デフォルトの名無しさん
2025/04/28(月) 16:40:25.22ID:BX6RBBDx ↑
つきまといハラスメント
つきまといハラスメント
758754
2025/04/30(水) 17:44:44.25ID:wEdJJHpl 昨日か今日自然回復しました
youtube側の不具合だったか
youtube側の不具合だったか
759デフォルトの名無しさん
2025/05/04(日) 17:59:00.64ID:cuekjvyq760デフォルトの名無しさん
2025/05/15(木) 18:10:24.07ID:Sisik9pA async な関数にプレフィックスかサフィックスをつけたいんだけど、お前らはどう思う?
自分の信ずる道を教えてくれ
自分の信ずる道を教えてくれ
761デフォルトの名無しさん
2025/09/06(土) 00:25:26.51ID:M62N3t6o すみません。
JavasSriptの難読化を解除するルールで
オフラインで、できればNode,jsを使わない
Windowsの実行ファイルで動くものはありますでしょうか。
オンラインだとログイン処理情報等が漏れたり
NPMのインストールとかCLI操作とか面倒で
出来ればもっと簡単に行えない物かと思いました。
JavasSriptの難読化を解除するルールで
オフラインで、できればNode,jsを使わない
Windowsの実行ファイルで動くものはありますでしょうか。
オンラインだとログイン処理情報等が漏れたり
NPMのインストールとかCLI操作とか面倒で
出来ればもっと簡単に行えない物かと思いました。
762デフォルトの名無しさん
2025/09/06(土) 00:28:10.33ID:M62N3t6o すみません。
「JavasSriptの難読化を解除するツールで」
の間違いでした。
「JavasSriptの難読化を解除するツールで」
の間違いでした。
763デフォルトの名無しさん
2025/09/07(日) 18:17:26.74ID:qa0vHy+s ない。
Node.js系のde4jsを自分でpkgでexe化して使うしかない。
Node.js系のde4jsを自分でpkgでexe化して使うしかない。
764デフォルトの名無しさん
2025/09/09(火) 21:19:56.89ID:vWUXgBqG765デフォルトの名無しさん
2025/09/10(水) 08:42:39.89ID:MX8tD0ny あれもイヤ、これもイヤってなんなんだよ
インストールすら拒否するならやめろよ
インストールすら拒否するならやめろよ
766デフォルトの名無しさん
2025/09/11(木) 12:36:14.80ID:vR7y+BLM npm終了のお知らせ
767デフォルトの名無しさん
2025/09/24(水) 01:03:04.17ID:n5aV+u8q 高階関数を途中でbreakするにはどうすれば良いか質問したらreturnしろと言われた
レスを投稿する
ニュース
- 日本行き空路49万件キャンセル 中国自粛呼びかけ 日本行きチケット予約の約32%に相当 ★4 [ぐれ★]
- 【音楽】Perfume・あ~ちゃんの結婚相手「一般男性」は吉田カバンの社長・吉田幸裕氏(41) 高身長で山本耕史似 [Ailuropoda melanoleuca★]
- 【大分】佐賀関で大規模火災、170棟以上が延焼中 70代男性1人と連絡取れず [ぐれ★]
- 【サッカー】U-17日本代表、激闘PK戦制す 北朝鮮撃破で6大会ぶり8強入り U17W杯 [久太郎★]
- 【インバウンド】中国人観光客の日本での消費額は年間約2兆円超…中国政府は公務員の出張取り消し [1ゲットロボ★]
- 【サッカー】日本代表、ボリビアに3発快勝 森保監督通算100試合目を飾る…鎌田、町野、中村がゴール [久太郎★]
- アンケート調査で「高市発言は問題なし」 93.5%wwwwwwwwwwwwwwwwwwwwwwwww [279254606]
- 寝癖ってどうしたらつかなくなるんや?
- 自閉症が「んなっしょい」と連呼するお🏡
- 【画像】エロい一般漫画はなぜこんなに抜けるのか
- BTSのバラエティ面白すぎワロタ
- 自民党議員「高市は先人が築き上げた日中関係を壊した。外務省が謝罪に言ってるが自分で責任を取れ」 [834922174]
