X



JavaScript ライブラリ総合質問所 vol.5 [無断転載禁止]©2ch.net
0001Name_Not_Found垢版2016/06/09(木) 00:24:30.21ID:???
JavaScriptライブラリ を自ら学ぶ人のための質問スレッドです。

■質問を書く上で
(1) 質問にならない投稿はご遠慮ください。(煽り、コード制作依頼など)
(2) 他の人に迷惑をかけるスクリプトの質問はご遠慮ください。
  (ブラクラ、[戻る], [閉じる], [クリック] の妨害、画面占有など)
(3) 長い間連続して質問する場合にレス番を名前にしてあれば、質問の流れが回答者に伝わりやすくなります。
(4) 常に自発的に調べる心構えを持ってください。
  具体的には「自分で調べてから質問する」「回答をもらってわからない単語があればGoogle検索してみる」など。
  わからない内容を代わりに調べてくれる回答者をお望みの方は余所で質問してください。
(5) 出来るだけ一般的な用語を使用してください。脳内オレオレ用語は混乱の元です。
(6) 出来るだけサンプルコードを掲示してください。言葉による説明は行き違いが生まれる場合があります。
  ※必ず「問題の事象が再現されること」を確認してください。
   必要な部分だけ切り出したつもりで現象が再現できていなかったケアレスミスがしばしば見られます。
(7) サンプルコードに HTML が含まれる場合は http://validator.w3.org/ で [Check] してみてください。
(8) 質問を具体的かつ詳細に書くと回答を得られやすいです。質問テンプレートを活用してみてください。

■質問テンプレート
【環境】OS, ブラウザをバージョンと共に記入してください。(ex: IE8, Firefox4)
【ライブラリ】使用しているライブラリ名を記入してください。(ex: jQuery)
【何をしたのか】何をしたら問題の現象が発生するのか。再現手順を具体的に書いてください。
【エラーメッセージ】エラーメッセージがあれば正確に書き写してください。(Windows なら「コピット」を活用)
【期待する結果】最終的にどういう結果を望んでいるのか、を書いてください。
【サンプルコード】現象を再現可能な最小限のコードを書いてください。
 1レスに収まらないならコード投稿サイトを利用してください。
 http://jsdo.it/ http://jsbin.com/ http://jsfiddle.net/ http://ideone.com/
0002Name_Not_Found垢版2016/06/09(木) 00:24:45.57ID:???
■前スレ
JavaScript ライブラリ総合質問所 vol.4
http://toro.2ch.net/test/read.cgi/hp/1400809255/

■関連スレ
+ JavaScript の質問用スレッド vol.115 +
http://toro.2ch.net/test/read.cgi/hp/1399072595/
JavaScript Tips コレクション
http://toro.2ch.net/test/read.cgi/hp/1070611524/
1行javascriptプログラミング   
http://toro.2ch.net/test/read.cgi/hp/1066750037/
【node.js】サーバサイドjavascript 2【Rhino】
http://toro.2ch.net/test/read.cgi/tech/1358937029/

■各種ライブラリ
jQuery API Documentation
http://api.jquery.com/
jQuery Mobile API Documentation
http://api.jquerymobile.com/
API Docs - YUI Library
http://yuilibrary.com/yui/docs/api/
Underscore.js
http://underscorejs.org/
lodash documentation
https://lodash.com/docs
0003Name_Not_Found垢版2016/06/09(木) 00:39:54.59ID:???
>>2の関連スレが古いので訂正。

■関連スレ
+ JavaScript の質問用スレッド vol.120 + [無断転載禁止]©2ch.net
http://echo.2ch.net/test/read.cgi/tech/1463914293/
+ JavaScript の質問用スレッド vol.130 + [無断転載禁止]©2ch.net
http://echo.2ch.net/test/read.cgi/hp/1463395557/
JavaScript Tips コレクション
http://toro.2ch.net/test/read.cgi/hp/1070611524/
1行javascriptプログラミング   
http://toro.2ch.net/test/read.cgi/hp/1066750037/
【node.js】サーバサイドjavascript 2【Rhino】
http://toro.2ch.net/test/read.cgi/tech/1358937029/
0004Name_Not_Found垢版2016/06/12(日) 11:07:35.91ID:???
次スレはここかな
総合スレが復活して良かった
0005Name_Not_Found垢版2016/06/12(日) 17:40:51.91ID:???
jQuery Compat 3.0のサポートブラウザがよくわからん
0009Name_Not_Found垢版2016/06/12(日) 22:51:25.15ID:???
>>5
アップグレードガイドを読む限り、jQuery 3.0 は IE9+ 対応とある
http://jquery.com/upgrade-guide/3.0/#browser-support
こちらではIE6-8は1.12を使ってくれ、とある
http://blog.jquery.com/2016/05/20/jquery-3-0-release-candidate-released/
こちらでは「jQuery Compat」は死んだ、といってる
http://blog.jquery.com/2016/01/14/jquery-3-0-beta-released/
というわけで「jQuery Compatはない」が正解
不確かな情報に踊らされないように
0010Name_Not_Found垢版2016/06/12(日) 22:59:20.70ID:???
だから、

> そのため予定されていたjQuery Compat 3.0がなくなり、
> jQueryは3.0に一本化されました。

って

+ JavaScript & jQuery 質問用スレッド vol.6 + [無断転載禁止]©2ch.net
http://echo.2ch.net/test/read.cgi/hp/1465566635/

に書いてあるのにw
読んでんだろwww
0011Name_Not_Found垢版2016/06/12(日) 23:01:02.66ID:???
やっぱりjQueryの話はjQueryスレの方が
正しい情報書いてあるな。
なんだこのスレwww
0014Name_Not_Found垢版2016/06/13(月) 00:35:21.25ID:???
これもプログラム板に移すんじゃなかったのか
また荒らされて終わるでしょ
0015Name_Not_Found垢版2016/06/13(月) 00:46:15.41ID:???
http://qiita.com/fmy/items/345a264a1cf2e2a73f62#warning-document-ready%E3%81%8C%E5%B8%B8%E3%81%AB%E9%9D%9E%E5%90%8C%E6%9C%9F%E3%81%AB
「document-readyが常に非同期に」はこういうことか
ずいぶんとトリッキーな動きだな

'use stirct';
document.addEventListener('DOMContentLoaded', function (event) {
 console.log(document.readyState);
 jQuery(function () {
  console.log(2);
 });
 console.log(1);
}, false);

DOMContentLoaded 的には何もしないのが正解なのだろうが
0016Name_Not_Found垢版2016/06/13(月) 10:24:15.39ID:???
このスレの書き込みをjQueryスレに投稿し直してる奴は何なんだ?
そこまでして向こうのみならずスレを盛り上げたいのか…

+ JavaScript & jQuery 質問用スレッド vol.6 + [無断転載禁止]©2ch.net
http://echo.2ch.net/test/read.cgi/hp/1465566635/
0017Name_Not_Found垢版2016/06/13(月) 11:09:19.43ID:???
>>15
DOMContentLoadedハンドラの後で動作するようにしてるのね
DOMContentLoadedのショートハンドとしてはありえない動きだけど、イベントを知らない初心者向けとしてはありがたい挙動なのかもね
0018Name_Not_Found垢版2016/06/13(月) 14:43:20.78ID:???
>>16
それ本家質問スレに常駐してる荒らしが立てたスレだからだよ
以前も自分の建てた乱立スレに本スレから質問コピペ→自己レスして伸ばしてた
0021Name_Not_Found垢版2016/06/13(月) 22:30:48.26ID:???
■ライブラリ総合スレ
【jQuery】JavaScript ライブラリ総合質問所 vol.3
http://echo.2ch.net/test/read.cgi/hp/1369444026/
JavaScript ライブラリ総合質問所 vol.4
http://echo.2ch.net/test/read.cgi/hp/1400834117/
JavaScript ライブラリ総合質問所 vol.5 [無断転載禁止]©2ch.net
http://echo.2ch.net/test/read.cgi/hp/1465399470/

■jQueryスレ
※前スレは「【jQuery】JavaScript ライブラリ総合質問 vol.3」(総合スレ)で「jQueryスレ vol.3」はない。
つまり、ライブラリスレの乗っ取り行為。

jQuery ライブラリ 総合質問所 vol.4
http://peace.2ch.net/test/read.cgi/hp/1400313626/
+ JavaScript & jQuery 質問用スレッド vol.5 + [無断転載禁止]©2ch.net
http://echo.2ch.net/test/read.cgi/hp/1452081417/
+ JavaScript & jQuery 質問用スレッド vol.6 + [無断転載禁止]©2ch.net
http://echo.2ch.net/test/read.cgi/hp/1465566635/
0022Name_Not_Found垢版2016/06/14(火) 10:33:24.43ID:???
>>19
jQueryスレとこっちを比較しているならこっちが本家
0023Name_Not_Found垢版2016/06/14(火) 10:56:46.12ID:???
試してみてびっくりしたんだが、下記コードを実行すると
jquery-2.2.4.js では「1 -> 3 -> 2」となり、
jquery-3.0.0.js では「1 -> 2 -> 3」だった

document.addEventListener('DOMContentLoaded', function () {
 console.log(2);
}, false);
jQuery(function () {
 console.log(3);
});
console.log(1);
0024Name_Not_Found垢版2016/06/14(火) 11:27:50.36ID:???
> 例えば"abc.def"というidを持つ要素をjQueryで取得することは出来ませんでしたが、この関数を使って$("#" + $.escapeSelector("abc.def"))と取得することができます。
http://qiita.com/fmy/items/345a264a1cf2e2a73f62#new-%E6%96%B0%E3%81%97%E3%81%84escapeselector%E9%96%A2%E6%95%B0
そんな馬鹿な、と思って試してみた

<p id="abc.def">#abc.def</p>
<script type="text/javascript">
'use stirct';
console.log(document.querySelector('#abc\\.def')); // OK
console.log(jQuery('#abc\\.def')[0]); // 2.2.4, 3.0.0 共にOK
console.log(jQuery('#' + jQuery.escapeSelector('abc.def'))[0]); // 3.0.0 のみOK
</script>

やはり、jquery-2.2.4.js でも実装できるな(エスケープ関数が用意されてなかっただけ)
0025Name_Not_Found垢版2016/06/22(水) 18:50:52.88ID:0C9LwOLq
jQueryにArray.prototype.concatと同等の関数はありますか。

var a = jQuery('#a');
var b = jQuery('#b');
var c = jQuery('#d');
var abc = jQuery('#a,#b,#c');

変数a,b,cから変数abcを一つの関数で生成したいのですが、APIが見つかりませんでした。
002625垢版2016/06/22(水) 18:52:26.13ID:0C9LwOLq
>>25のコードに誤りがありましたので訂正します。
var c = jQuery('#c');
002825垢版2016/06/22(水) 21:41:22.02ID:0C9LwOLq
>>27
ありがとうございます。出来ました。
jQueryにmerge機能が付いていたんですね。

ヒントを頂いたのでjQueryオブジェクト以外も試してみましたが、NodeListやHTMLCollectionはmergeしてくれませんでした…。
console.log(jQuery([document.querySelectorAll('p'), document.getElementsByTagName('div')]));
0030Name_Not_Found垢版2016/06/23(木) 00:49:15.33ID:???
>>25
このスレで聞いても間違いしか出てこないよ。
こっちにjQueryを混ぜようとしたいだけで
jQueryが好きでもないやつがjQueryの話をしているだけだから。

あなたの疑問に対する答えはこっちに書いた。あとはこっちでやるように。
http://echo.2ch.net/test/read.cgi/hp/1465566635/63
003125垢版2016/06/23(木) 01:29:52.48ID:P9mZ3YME
>>30
間違いを指摘してくれた事には感謝しますが、このスレで満足していますのでそちらに書いて頂かなくて結構です。
>>21にあるように本スレはこちらだと思っています。

.add()はa.add(b, c)が期待通りに動かず、a.add(b).add(c)と書いてようやく要件を満たします。
(勿論、2回関数を呼び出してしまっていますので完全ではありません)。
.add()はどちらかといえば機能限定版(非破壊的、可変引数ではない)のArray.prototype.pushに近いメソッドだと認識しています。
そういえば、jQuery APIで可変引数の関数は見ないですね。
https://api.jquery.com/add/
003325垢版2016/06/23(木) 02:03:36.83ID:P9mZ3YME
とりあえず、Spread要素で実装できました。
jQuery([...a,...b,...c]);
が、Babelを使うならjQueryを使う必要性が激減します。
jQuery APIの範囲内では何ともならないのでしょうかね…。
003425垢版2016/06/23(木) 02:34:55.27ID:P9mZ3YME
ES5で妥協したコード。
Array.prototype.reduceとjQuery.mergeで2回呼んでるので私的にはまだ不満です。
もっとすっきり書けるコードがあればいいのですが。

[a, b, c].reduce(jQuery.merge); // 破壊的
console.log(a);

var abc = jQuery(a);
[abc, b, c].reduce(jQuery.merge); // 非破壊的
console.log(abc);
0035Name_Not_Found垢版2016/06/23(木) 02:43:27.62ID:???
ほらねw 結局ここでやるなら自分で答えを考えるしか無いわけさw
0036Name_Not_Found垢版2016/06/23(木) 02:51:42.04ID:???
回答じゃないけど、reduceの使い方が面白いね
0037Name_Not_Found垢版2016/06/23(木) 02:59:20.23ID:???
可読性を低くしてまでやることじゃないけどなw

動きをドヤ顔で説明したくなるようなコードはだめ
0038Name_Not_Found垢版2016/06/23(木) 03:00:22.37ID:???
ぶっちゃけ、この質問者はそこらの回答者よりもレベルが高い
向こうの回答よりも自分で導き出したコードの方が洗練されてるから、どこで質問しても結果は同じだっただろうな
0040Name_Not_Found垢版2016/06/23(木) 03:02:01.63ID:???
レベルが高い(笑)

27 名前:Name_Not_Found[sage] 投稿日:2016/06/22(水) 21:23:37.27 ID:???
jQuery([a,b,c])

28 名前:25[] 投稿日:2016/06/22(水) 21:41:22.02 ID:0C9LwOLq [3/3]
>>27
ありがとうございます。出来ました。


自作自演バレバレなんだよなぁ
004125垢版2016/06/23(木) 03:20:45.17ID:P9mZ3YME
とりあえず、>>27は私ではないという事は伝えておきます。
>>28は私の確認ミスですので言い訳するつもりはありませんが、>>27,30には回答してくれた事に感謝しています。
私にとっては回答の正誤はどうでもよく、最終的に最適解に辿りつければ良いのです。
質問や回答に優劣をつける事に価値はありません。
0042Name_Not_Found垢版2016/06/24(金) 15:01:59.27ID:???
reduceは可読性落ちてないよなあ
これで可読性落ちるっていうならreduceを理解してないだけ
jQueryにreduceないから知らんのかもしれんけど
0043Name_Not_Found垢版2016/06/24(金) 18:02:13.52ID:???
Array.fn.concatを独自定義するのが現実的かねえ
上でreduceが挙がったけど、jQueryは配列操作関数としては物足りないところがあるよね
0044Name_Not_Found垢版2016/06/24(金) 18:08:07.52ID:???
$.merge() を合成に使うのは危険な気がするがどうだろう?
あくまで配列的に合成してしまうのでは
0046Name_Not_Found垢版2016/06/24(金) 18:21:07.31ID:???
>>45
いや、そっちじゃなくて
添字とlength以外が適切に処理されないのではと

たとえば.add() の場合は前回選択している部分が残されて
.end() で取り出せるわけだけどそういう処理が行えないんではないかな
0047Name_Not_Found垢版2016/06/24(金) 18:35:32.18ID:???
>>46
ごめん、何を言ってるのかわからなかった
>>34の実装ならどちらも a を基本としているから a にあるプロパティは引き継がれると思うんだけど、どういうコードで弊害が発生するんだろう?
0048Name_Not_Found垢版2016/06/24(金) 18:51:55.48ID:???
>>46
わかった、こういう事ね
end()を使わなければ弊害がなさそうだけど、それが嫌ならadd()をreduceのコールバック関数に持ってくるしかなさそうだね

var abc = jQuery(a);
[abc, b, c].reduce(jQuery.merge);
console.log(abc); // [#a, #b, #c]
console.log(abc.end()); // new Object

var abc = a.add(b).add(c);
console.log(abc); // [#a, #b, #c]
console.log(abc.end()); // [#a, #b]
0049Name_Not_Found垢版2016/06/24(金) 18:58:52.25ID:???
end()はslice()で代用できると思うが、どうだろう?
abc.slice(0, -1);
0050Name_Not_Found垢版2016/06/24(金) 19:12:51.87ID:???
.end()は例えば現状ではって話で
(jQuery的にやっていいのかわからないけど)プラグインで内部に値を持つとか
将来jQueryが機能拡張されて…
とかいう意味での危険ね
まあ、そうなっていると認識していればOKかなあ
0051Name_Not_Found垢版2016/06/24(金) 21:18:12.98ID:???
>>50
前方互換性を考慮するならjQuery APIを使ってマージ処理を実装した方がいいと思う
>25のケースなら.add()か.pushStack()を使えばいいね(関数一つで実装する条件は満たせないけど)
ちなみに、jquery-3.0.0.jsのコードはこんな感じ

add: function( selector, context ) {
 return this.pushStack(
  jQuery.uniqueSort(
   jQuery.merge( this.get(), jQuery( selector, context ) )
  )
 );
},

> (jQuery的にやっていいのかわからないけど)プラグインで内部に値を持つとか
その設計だと.add()で引き継がれるか不明だし、filter()のような非破壊系メソッドでは引き継がれないよね
必要ならプラグイン作者側で破壊的メソッドだけでも値が引き継がれるように設計してもらわないといけない
「将来jQueryが機能拡張されて… 」を考慮するならやってはいけない設計だと思う
安全に設計するなら.data()を使うか、DOM側に値を持たせる

> まあ、そうなっていると認識していればOKかなあ
同意
コーダー側でもある程度はjQueryオブジェクトの設計を知っているべきだと思う
0052Name_Not_Found垢版2016/06/24(金) 22:05:33.72ID:???
つまり最善策(わかりやすく、最小の実現方法)はどれ?
0053Name_Not_Found垢版2016/06/24(金) 22:12:24.42ID:???
>>42
> reduceは可読性落ちてないよなあ
> これで可読性落ちるっていうならreduceを理解してないだけ

reduceを理解していれば、reduceの戻り値を
捨てるなんてありえないと思うがね。
reduceの機能を理解しているかどうかじゃなくて、
reduceはどういうときに使うものかっていう話だよ。

例えばmapかいてmapの戻り値を捨てるようなもんだよw
最初からeach使えという話。
0055Name_Not_Found垢版2016/06/24(金) 22:28:42.60ID:???
>>53
reduceは一つの値を連続処理する関数なのだから返り値を使わなくてもいいんだよ
返り値を使えばもっと短く書けるけど、「可読性を低くしてまで」は関係ない
var abc = [b, c].reduce(jQuery.merge, jQuery(a));
0056Name_Not_Found垢版2016/06/24(金) 22:32:23.38ID:???
>>55
関数型を理解してくださいとしか言いようがないな。
関数型言語から来たものなのに副作用に依存するとか
ちょっとセンスがわるい
0057Name_Not_Found垢版2016/06/24(金) 22:54:38.28ID:???
>>56
君にセンスを理解してもらう必要はないんだけど…、頭が固いと大変だね
0058Name_Not_Found垢版2016/06/24(金) 22:56:52.88ID:???
というか、>>55は返り値を使ってるけどね
自分の世界観から抜けられないだけのような
0060Name_Not_Found垢版2016/06/24(金) 23:13:34.05ID:???
>>59
冗長合戦したいなら$()が冗長だから出直しておいで
0061Name_Not_Found垢版2016/06/24(金) 23:42:03.03ID:???
この程度で冗長とか正しい書き方とか、偏執的にも程がある
0063Name_Not_Found垢版2016/06/25(土) 13:44:37.05ID:???
コードだけ読んで批判は聞き流せばいい
相手の為を思って叱ってくれる人も中にはいるが、こいつのはただjQueryスレに誘導するためにこき下ろしているだけだからな
0064Name_Not_Found垢版2016/06/25(土) 13:45:16.35ID:???
jQueryの話題をjQueryスレに誘導することに
なんの問題があるんだ?w
0065Name_Not_Found垢版2016/06/25(土) 14:13:27.67ID:???
ライブラリスレでjQueryの質問しても何の問題もない
荒らしのたてたスレに誘導する必要もない
0066Name_Not_Found垢版2016/06/25(土) 14:23:09.08ID:???
そしたら今度はこっちがjQueryで占領されるわからないのかなぁ?w
0067Name_Not_Found垢版2016/06/25(土) 14:24:16.13ID:???
こっちはjQueryを含めるライブラリ全部のスレ
向こうはJavaScriptとjQueryのスレってことでいいじゃないか
0068Name_Not_Found垢版2016/06/25(土) 16:09:08.85ID:???
一々そいつにレス返さんでいいから
0069Name_Not_Found垢版2016/06/25(土) 16:16:18.58ID:???
レス返そうが返すまいが、会話してるんだがなw
0073Name_Not_Found垢版2016/06/26(日) 08:03:10.80ID:???
>>67
タイトルで誤魔化してるが、向こうはただのjQueryスレ
JavaScriptの質問はスレ違い
0075Name_Not_Found垢版2016/06/26(日) 12:33:39.05ID:???
ふたを開けてみれば、jQuery 3.0はあまり変わってないな
もっと思い切ったAPI変更が欲しかったら
0076Name_Not_Found垢版2016/06/26(日) 17:09:26.10ID:???
>>75

もう完成されているんだよ。
アドビ イラストレータと同じww
0077Name_Not_Found垢版2016/06/26(日) 23:02:49.40ID:???
基本的に後方互換性重視だな
Deferedを廃止してPromiseを使うとか、classListを実装するとか、eachをforEach互換にするとか、標準に近づけてほしかったな
0078Name_Not_Found垢版2016/06/26(日) 23:14:41.33ID:???
>>77
互換性をなくしてまで仕様を変える意味は?
0079Name_Not_Found垢版2016/06/26(日) 23:25:01.53ID:???
学習コストの低下と汎用性じゃない?
メジャーバージョンアップで互換性がなくなるなんて良くあること
個人的にはDeferedはPromiseに変えて良かった気がしないでもない
0080Name_Not_Found垢版2016/06/26(日) 23:31:57.50ID:???
>>79
> 学習コストの低下と汎用性じゃない?
学習コストは一度覚えればいいだけ
過去のソースを書き換えるほうが手間がかかる。
汎用性は意味不明。標準よりも高機能のほうが汎用性は高いし。
0081Name_Not_Found垢版2016/06/26(日) 23:32:16.43ID:???
> 個人的にはDeferedはPromiseに変えて
機能が低下している。
0082Name_Not_Found垢版2016/06/26(日) 23:34:20.43ID:???
PromiseはAndroid4.4が非対応だからな。
標準のPromiseを使うことはできないのだ。
0083Name_Not_Found垢版2016/06/27(月) 10:26:54.82ID:???
> 学習コストは一度覚えればいいだけ
さすがにこれはない
jQuery一色に染まってるな
0084Name_Not_Found垢版2016/06/27(月) 11:00:08.45ID:???
多機能が必ずしもいいとは限らんのよ
Promiseは内部的にPolyfillを作ればいいだけでPromisesの実装が進めばPolyfillは削除できる
event.pageXの独自拡張が削除されたように標準を使ってもらう形の進化は有りだと思う
0085Name_Not_Found垢版2016/06/27(月) 12:13:30.70ID:???
slim版で$.ajax()が削除されたのはFetch APIの実装が整ったら削除するための布石かな
実装が整ったからAPI削除ってjQuery 3.0でもいくつかあったよね
0086Name_Not_Found垢版2016/06/27(月) 13:06:01.35ID:VxsZQDB5
>>85

kwsk
0087Name_Not_Found垢版2016/06/27(月) 14:05:54.34ID:???
>>13にまとめられてなかったっけ?
削除されたAPIはajaxのcompleteが記憶に新しいが
$.parseJSONの非推奨も次で削除する為の準備段階な印象
008886垢版2016/06/27(月) 17:29:54.68ID:???
>>87

ありがとうございます。
リンク先参照します
0089Name_Not_Found垢版2016/06/27(月) 20:27:57.51ID:???
>>84
> Promiseは内部的にPolyfillを作ればいいだけでPromisesの実装が進めばPolyfillは削除できる
それをいうなら、jQuery 3.0のDefferedはPromise互換なので、
Promiseを使ってDefferedを実装すれば良いだけ。
0090Name_Not_Found垢版2016/06/27(月) 20:32:07.43ID:???
>>85
Fetch APIはあまり関係ないと思うよ。

Slim build

https://blog.jquery.com/2016/06/09/jquery-3-0-final-released/
> Finally, we’ve added something new to this release. Sometimes you don’t need ajax,
> or you prefer to use one of the many standalone libraries that focus on ajax requests.
> And often it is simpler to use a combination of CSS and class manipulation for all your
> web animations. Along with the regular version of jQuery that includes the ajax and
> effects modules, we’re releasing a “slim” version that excludes these modules. All in all,
> it excludes ajax, effects, and currently deprecated code. The size of jQuery is very rarely
> a load performance concern these days, but the slim build is about 6k gzipped bytes
> smaller than the regular version ? 23.6k vs 30k. These files are also available in the npm package and on the CDN:

要するにjQueryをDOM用のライブラリだけとして使いたい人のため。それで6KBのサイズ削減ができる。
Ajax関連はいろんなライブラリに搭載されてるから機能が重複しやすかった。
0091Name_Not_Found垢版2016/06/27(月) 20:33:44.61ID:???
>>85
> 実装が整ったからAPI削除ってjQuery 3.0でもいくつかあったよね
実装が整ったという理由で消えたAPIはないよ。
jQueryの互換性は高い。

jQueryはDOM APIよりも使いやすいという利点のライブラリなんだから
実装が整った程度じゃAPI削除する理由にはなりえない。
0092Name_Not_Found垢版2016/06/27(月) 23:47:20.35ID:???
>>89
> Promiseを使ってDefferedを実装すれば良いだけ。
Promiseをprototype拡張するつもりか
0093Name_Not_Found垢版2016/06/27(月) 23:49:47.97ID:???
>>92
prototype拡張は駄目なやり方だという設計してるのがjQueryなんでぇ。
当然jQueryと同じようにラップするに決まってるでしょう(笑)
0094Name_Not_Found垢版2016/06/27(月) 23:52:11.18ID:???
そもそもDOM APIはPromiseを使うべきだろうな。
将来はイベントハンドラとか全部Promiseに置き換わるはず
0095Name_Not_Found垢版2016/06/28(火) 03:03:59.63ID:???
ん?標準のPromiseにprogressってあったっけ?
標準のPromiseは基本機能しかサポートしてないから
普通はQとかを使うのが常識だと思ってたが。
0096Name_Not_Found垢版2016/06/30(木) 19:26:37.06ID:???
>>93
Promiseをラップするぐらいなら、現行のPrpmise互換オブジェクトの方が数段マシだと思うが
拡張部分とPromise互換部分の整合性をとるのが面倒で内部的にPromiseを使うメリットが感じられん
0097Name_Not_Found垢版2016/06/30(木) 21:16:01.84ID:???
そもそもさ、notifyとprogressの事を忘れてないか?

http://blog.toshimaru.net/jquerydeferred-is-most-important-client/
> deferredへ通知する: notify()とprogress()
>
> jQuery1.7からresolve/rejectに加えて、progressが導入された。、
> progress()により、deferred内でnotify()がコールされたときに実行される
> コールバック関数を登録することができ、resolved状態に対する「進捗(progress)」を
> 表現できるようになった。notify()で事前にコールバックを登録しておくことで例えば、
> ロードに時間がかかるリソースを持つdeferredオブジェクトの定期的に更新されるプログレスバーを描画できる。
> deferredはロード中に通知(notify)され、ロード完了時に解決(resolve)される。

jQueryでDeferredを使ってる所っていうのはAjax通信の部分だけだと思うが、
Ajax通信を置き換える目的ならば、XMLHttpRequestにあるprogress相当の機能を実装する必要がある。
ってことは素のPromiseオブジェクトでは明らかに機能不足なんだよ。

そういう前提において、DefferedにPromiseと互換性を持たせる(jQuery 3.0で実現したこと)のではなく
Promiseを使えって言うならば、足りない機能を実装するしか無いだろ。

そして>>96の言うとおり標準のPromiseをラップして使うメリットはないので
DefferedのままPromiseと互換性をもたせるのが一番すぐれたやり方なわけだよ。
0098Name_Not_Found垢版2016/06/30(木) 21:35:32.91ID:???
そもそも、「>>77>>84が目指しているゴール」と「現行jQuery擁護派のゴール」が違いすぎるので議論にならない
反論するなら相手の立場になって反論しないとな
でなければ、ただの宗教戦争だ
0099Name_Not_Found垢版2016/06/30(木) 22:35:07.88ID:???
まあ確かに、Promise派としてはprogressはXMLHttpRequestと同じ方法で実装してくれれば満足するだろうね
0100Name_Not_Found垢版2016/06/30(木) 23:24:13.58ID:???
>>98
そうか?単に標準のXMLHttpRequestで必要とされている機能を
満たすにはPromiseの機能だけでは不足しているから
拡張する必要があるってことに気づいているかどうかだと思うぞ。
0101Name_Not_Found垢版2016/06/30(木) 23:31:44.96ID:???
>>99
XMLHttpRequestと同じ方法ってことは、
Promiseを返さないってこと?
0102Name_Not_Found垢版2016/07/01(金) 00:02:35.71ID:???
>>101
そういうことになるね
>>97はjQueryの既存概念にとらわれすぎているようだけど、DOMのInterfaceで実装する仮定で想像してみればいいたい事の大体はわかると思うよ
そもそも、Ajaxの返り値の話なんて誰もしてないから
0103Name_Not_Found垢版2016/07/01(金) 00:22:07.78ID:???
Promiseを返せと言ったりPromiseを返すなと言ったり
意味不明だなw

結局のところPromiseを使う理由はないってことか。
互換性を切るなんてもっての外だし、
あえて互換性を切ってまでDefferedの仕様を変える意味はないし、
やはり今の仕様が一番最善ってことか。
0104Name_Not_Found垢版2016/07/01(金) 00:36:33.62ID:???
>>103
独り合点してないでもう一度、読み直して来たら?
jQuery.Defered === Promise && ajax() !== jQuery.Defered
0105Name_Not_Found垢版2016/07/01(金) 00:50:51.45ID:???
だからFetch APIっていうのがあるんだよ。
互換性の問題があるからjQueryは仕様を変えてはいけない。これは大前提。

そして標準でXMLHttpRequestをPromiseベースに改良したFetch APIが普及しつつある。
最新版のSafariやAndroid 4系やIEで動かなかったりするからまだ乗り換えることはできないけど、
これを使えばjQueryでDeferredを使うもの=Ajax関連は必要なくなる。
だからjQuery 3.0ではAjax関連を取り除いたSlim buildっていうのを用意した。

Promiseを使いたいならjQuery 3.0 Slim build + Fetch APIを使えばいいだけなんだから
互換性を切ってまでDeferredをやめてPromiseに変える合理的な理由はないでしょ?
Slim buildを用意することでPromiseベースのAjax通信(つまりFetch API)への移行を
サポートしてるわけでDeferredを使っていることは失望するポイントにはならないんだよ。

元来jQueryはブラウザ間の互換性を吸収するためにも用いられてきたけど、
本質を理解している人はわかってると思うけど、互換性を吸収する部分は実はおまけ機能で
真の姿は関数型風のDOM操作ライブラリ。今それになろうとしているということ。
だから関数型の考え方を理解して使いこなせる人だけがjQueryの凄さを理解できる。
jQueryに意味がないと言ってる人は、関数型の考え方を理解していないはず。
0106Name_Not_Found垢版2016/07/01(金) 00:54:14.73ID:???
>>104
読み直した。それであなたが言いたいポイントは?
0107Name_Not_Found垢版2016/07/01(金) 07:49:13.76ID:???
>>106
君は「相手の立場で物事を考える」って出来る?
「インデントにタブ/半角スペースのどちらを使うべきか」の命題でタブ派が半角スペース派に「誰でも納得出来る明確なメリット」を主張できると思う?
元々の立ち位置が絶対的に違うのに、自分の立場でしか物事を考えられない人は議論に向いてないと思うよ
0109Name_Not_Found垢版2016/07/01(金) 22:42:09.19ID:???
議論したいなら、少なくとも聞かれたときには
自分が言いたいポイントを明確に答えられなければならない。
それが言えないってことは、そもそもお前は議論していない。
0110Name_Not_Found垢版2016/07/02(土) 08:37:53.99ID:???
>>108
>>104が読めないの?
ajaxの返り値がPromiseでなく、jQuery.Defered === Promise であればいいでしょ
>>103の「結局のところPromiseを使う理由はないってことか」は文意を読めてないだけでしょ
いい加減、疲れるんだけど
0111Name_Not_Found垢版2016/07/02(土) 08:51:41.49ID:???
あと、>>107もいいたいことの一つなんだけどね
>>77に対して「jQueryマンセー」な反論を返すのはただの思想の押しつけ
明らかな間違いを是正するならともかく、どちらが正しいという問題でもないよね
なぜそこまで確信的な論調になるのか、俺には理解できないよ
0112Name_Not_Found垢版2016/07/02(土) 10:44:07.42ID:???
> ajaxの返り値がPromiseでなく、jQuery.Defered === Promise であればいいでしょ
なんで互換性をなくしてまでPromiseにしないといけないのかわからん。
PromiseはDeferredに比べてprogressの機能が足りない。
だからPromiseに置き換えることはできない。

jQuery 3.0でDeferredはPromiseと互換性があるものになった。
だからPromiseではなくても互換性があるDeferredで十分って話だろ。

それにPromiseをサポートしてないブラウザはどうするのか?
jQuery自身にPromiseのpolyfill機能でも搭載するのか?w
提案してみれば?jQueryにPromiseのpolyfill機能を付け加えて
DeferedをPromiseに変えて互換性を壊しましょうってw

互換性がないものに変わることで、既存のコードを書き換えないといけないならば
Fetch APIに変更すればいいだけじゃないか。そのためにjQueryはSlim Buildを用意したというのに。

>>111
あのさ(苦笑)jQueryの機能が素晴らしいって言ってるんじゃなくて
jQueryの選択は正しいって言ってるの。論理的にね。

どうもjQueryを擁護したら、なんにも考えずにjQueryを叩くやつがいるよな。
jQueryに親でも殺されたか?w
0113Name_Not_Found垢版2016/07/02(土) 13:25:10.19ID:???
>>112
思想の違いってものが理解できないタイプなんだね
他人の思想にいちいち噛みつく辺りが嫌われてるのが理解できないか、理解した上でスルーしてるのか知らないけど
俺からすれば君はjQueryの布教活動しているようにしか見えないけどね
0114Name_Not_Found垢版2016/07/02(土) 13:50:03.82ID:???
思想の違い?

互換性を保ちましょう。(Deferredの仕様は変えない)
標準への対応をしましょう。(DeferredのPromise互換)
将来への対応をしましょう。(Ajax部分を取り除いたSlim Buildの作成)

が俺とjQueryの思想だが、
じゃあお前の思想は?w

お前の思想は何も考えずに適当に思いついたことを言ってるだけだろw
0115Name_Not_Found垢版2016/07/02(土) 16:53:39.12ID:???
布教活動もクソも延々と啓蒙()で荒らしてるやつじゃん
0116Name_Not_Found垢版2016/07/02(土) 17:56:40.15ID:???
啓蒙はしてるが荒らしはしていない。
jQueryの話題をすることが荒らしというならば
それはお前がjQueryが憎いだけだw
ここはjQueryの話題OKのスレのはずだがね
0118Name_Not_Found垢版2016/07/02(土) 18:36:09.47ID:???
>>114
・標準のAPIを使いましょう
・標準に準拠する為なら後方互換性は切り捨てても構いません
0119Name_Not_Found垢版2016/07/02(土) 18:47:02.96ID:???
> ・標準のAPIを使いましょう
何のために?

念の為に言っておくけど、 jQueryの本質は
DOM操作を関数型風にやること。

で標準のAPIっていうのはFetch APIのことだと思うけど、
jQuery(Slim build) + Fetch APIをすればいいよね?
jQueryは本来の用途であるDOM操作に専念させる。

Fetch APIを使えばいいのに何のために中途半端な対応を選んでいるの?
$.ajaxの戻り値だけをPromiseに変更するの互換性を切り捨てているのに
中途半端対応でしか無いんだけど

jQueryの標準への対応方法(Slim build)ではなくて
中途半端な対応をするべきだという合理的な理由を言ってくれ。
0120Name_Not_Found垢版2016/07/02(土) 18:48:03.24ID:???
標準のAPIを使いましょうといわれても
標準のAPIを搭載していないブラウザがあるよね
Android 4.4とか
0121Name_Not_Found垢版2016/07/02(土) 19:11:11.43ID:???
jQueryのDeferredがPromiseと互換性がある
ってことの意味を理解してないんじゃないだろうか?
互換性があるからこのようにPromiseとDeferredは混ぜて使える。

https://jsfiddle.net/axL7p4d4/

function timeout(ms) {
 return new Promise(function(resolve, reject) {
  setTimeout(function() {
   resolve();
  }, ms);
 });
}

console.log('start')
timeout(3000).then(function() {
 console.log('get')
 return $.get('/');
}).then(function(html) {
 console.log(html.split("\n")[0])
 console.log('wait')
 return timeout(3000);
}).then(function() {
 console.log('end')
});
0122Name_Not_Found垢版2016/07/03(日) 13:43:15.42ID:???
ここまで完璧な論破は珍しいなw
0123Name_Not_Found垢版2016/07/04(月) 12:15:02.16ID:???
論破してる気になってるのは本人だけだがな
012477垢版2016/07/04(月) 12:47:33.18ID:G9XXx5Kd
まだやっているのか…
反論してる奴は話にならん
jQuery3.0が後方互換性重視な事は>>77で指摘済み
現行jQueryの思想から外れている事は百も承知
標準に合わせるメリットは「学習コスト」と「コードの可搬性」だけで十分だ
上の掛け合いは保守派と革新派が言い争っているに過ぎない
お互いの理想の形が一致しない議論に参加するのは時間の無駄
0125Name_Not_Found垢版2016/07/04(月) 17:05:13.05ID:???
jQueryの人は文体が特徴的だからすぐ分かる
0127Name_Not_Found垢版2016/07/04(月) 21:44:44.24ID:???
>>124
> 標準に合わせるメリットは「学習コスト」と「コードの可搬性」だけで十分だ

だから標準=Fetch APIでしょ?jQueryとFetch APIを組み合わせて
使っていいんだよ?そのためのSlim Buildなんだから。

お前が言ってるのは、標準のFetch APIではなくてjQueryのAjaxを使うことで
学習するコストが必要になるが、戻り値がPromiseだと(一部の)学習コストがさがる
って言ってるから謎なんだよ。Fetch API使ったほうが明らかに学習コストは減るだろ。

俺はFetch APIを使うのが一番学習コストが下がるからjQueryはそのままでいいって言ってる。
新しく使う人はFetch APIを使うだろうし、そうでない人、jQueryのAjax機能をすでに使ってる人は
当然今までのDefferedの知識があるからこちらも学習コストが下がる(正確には上がらない)

あとコードの可搬性で言えば、Android 4.4はどうする?Promiseはどこでも動くわけじゃないぞ。
PromiseのPolyfillライブラリを導入しろって?俺ならFetch APIのPolyfillごと導入するがねw
0128Name_Not_Found垢版2016/07/04(月) 22:14:34.35ID:???
>>125
面倒くさいから名前もIDも書くつもりはないけど別に隠すしてないよ?
だから、わかると言われても・・・。
もしかして見抜いたり!とか思ってる?
0129Name_Not_Found垢版2016/07/04(月) 22:39:18.60ID:???
あ、それからもう一つあった。
jQueryのDefferedがPromise互換になった今
どんな学習コストがかかるのかも聞いてなかったね。
013077垢版2016/07/04(月) 23:21:08.45ID:OUGP5uwu
>>127
お前が問題にしているのは「jQuery.ajaxの返り値」であってPromiseは関係ない
ajaxの返り値はjQuery.DeferredでもPromiseでもない抽象オブジェクトで十分だが、それは別の話だ
お前が勝手に話を広げただけ
0131Name_Not_Found垢版2016/07/04(月) 23:38:18.14ID:???
>>130
jQueryでPromiseが使われてるのはajax関連(getやpost含む)ぐらいなもんだろ。
少なくとも俺はajax関連以外でDeferredを使った記憶はない。
他にjQueryの一体どこでDeferred使えっていうんだよw

ajaxを標準にしろって言うならば、Fetch APIを使えばいいわけで
非標準のjQueryのajax と 標準のPromiseを混ぜる理由がない。

それに結局Android 4.4はどうするのかにも答えてないし。
0132Name_Not_Found垢版2016/07/04(月) 23:38:38.95ID:???
訂正

jQueryでDeferredが使われてるのはajax関連(getやpost含む)ぐらいなもんだろ。
013377垢版2016/07/04(月) 23:43:30.42ID:OUGP5uwu
>>129
別にPromiseだけに拘ってはいない
お前がしつこいほどに「jQuery.ajaxの返り値」を論旨に置いてるだけだ
Promiseについては前方互換性、可搬性が主だが、「Promise.allがjQuery.jQuery.Deferred.allに存在しない」もあるので学習コストが同じわけではないだろうな
0134Name_Not_Found垢版2016/07/04(月) 23:50:15.27ID:???
>>133
あー、なるほどねw やっとわかったわ。

お前、Promise.all みたいに Deferred.allしたいと思ってるだろw

そんなのする必要ねーよ?


jQueryを使っていてDeferredが出てくるのは戻り値としてだけ。
自分でDeferredオブジェクトを作る必要はない。(作りたいなら作ってもいいがね)
っていうかなんのために作るのさ?w

Promise.allを使いたければ、Promise.allをそのまま使え。
その引数にDeferredオブジェクトを渡すことができる。
互換性があるからね。
013577垢版2016/07/04(月) 23:53:03.25ID:OUGP5uwu
>>131-132
> jQueryでDeferredが使われてるのはajax関連(getやpost含む)ぐらいなもんだろ。
それはお前が自前でPromiseを使った非同期処理を書いたことがないからそう思うだけだ
何の為にjQuery.Deferredが公開APIになっているのか、を良く考えろ
0136Name_Not_Found垢版2016/07/05(火) 00:02:05.86ID:???
>>135
> それはお前が自前でPromiseを使った非同期処理を書いたことがないからそう思うだけだ
そういうレスするってことは>>134は正しかったようだなw

レスするならそうじゃなくてお前がいつどこでjQuery.Deferredを使うのか答えてほしいもんだがw
jQuery.DeferredがでてくるのはjQuery ajax関連の戻り値としてだけ。理解した?OK?


> 何の為にjQuery.Deferredが公開APIになっているのか、を良く考えろ

いや、単に世の中にPromiseが普及する前(標準化される前、ブラウザに搭載される前)に
jQuery.Deferredが世に出ただけの話だけど???
お前は何のためだと思ってたんだい?

https://api.jquery.com/category/deferred-object/
The Deferred object, introduced in jQuery 1.5,

https://blog.jquery.com/2011/01/31/jquery-15-released/
jQuery 1.5 Released Posted on January 31, 2011 by John Resig



http://caniuse.com/#search=Promise
Firefox 27, Chrome 32 Partial Support

2014年01月15日 11時39分 更新 「Google Chrome 32」の安定版リリース
http://www.itmedia.co.jp/news/articles/1401/15/news061.html

https://ja.wikipedia.org/wiki/Mozilla_Firefox%E3%81%AE%E3%83%90%E3%83%BC%E3%82%B8%E3%83%A7%E3%83%B3%E3%81%AE%E5%A4%89%E9%81%B7#Firefox_27
> 2014年2月4日にリリースされ、
0137Name_Not_Found垢版2016/07/05(火) 00:11:14.01ID:???
jQuery.Deferredオブジェクトを戻り値ではなく自分で作成したのは
iframeを使ったときにページがロードされたあとを検出するときに使ったぐらいかな。
古いブラウザまで考えるとiframeのページロード後の検出は意外と面倒だったんだよね。
onloadが変なタイミングで発生したりOperaがページロード前はabout:blank状態だったりとか。

Promise(Deferred)はresolveになった後に変化できないから、
clickみたいに何度も発生するイベントでは使えないしね。

今ならPromiseを使うだろうけど、昔はPromiseはブラウザに搭載されてなかったし。その頃の話だよ。
Polyfillもあったかどうか怪しい。jQuery使ってたからDeferredを使うのが楽だった。

で、jQuery.Deferredが出てくるのはajax関連の戻り値としてだけで自分で作る必要はなく
互換性があるのでjQuery.DeferredとPromiseを混ぜて使えばOKなので、
最初から言っているとおり、jQueryは今の状態が一番適切だと思うが?
標準が使いたければ、Ajax関連ごとFetch APIに置き換えればよい。そのためのjQuery 3.0のSlim build。
013877垢版2016/07/05(火) 00:46:59.98ID:sEI91sKd
>>134
jQuery.Deferredは自前でDeferredオブジェクトを作れるようにする為に存在するのであってそれ以上でもそれ以下でもない
お前が「jQuery.Deferredを使う必要がない」というならお前と議論するのは時間の無駄だ
jQuery.Deferredが要らんというならさっさと廃止するようにリクエストしろ
「お前が必要と思うもの」を他人に押し付けるな
0139Name_Not_Found垢版2016/07/05(火) 02:16:25.93ID:???
>>138
なに一人で空回りしてるんだよw

「お前が必要と思うもの」を押し付けてるのはお前だろ。
jQueryのDeferredをPromiseに変更することが必要なんだろ?w
俺は現状維持でいいと言ってるの。なにも必要と思ってない。

jQuery.Deferredは自前でDeferredオブジェクトを作れるようにする為に存在するのであって
それ以上でもそれ以下でもないから、「自前でDeferredオブジェクト絶対に作らなければいけないんだ!」って
思うお前がおかしい。作れるからって作らなければいけないわけじゃないんだよw

もちろんjQuery内部では作る必要があるから作っているだろうが、
それをPromiseに置き換えるならば、Andorid 4.4などでPromiseをサポートしてないから
jQueryは自前でPromsiseを実装しなければいけなくなる。
その自前実装の亜種がDeferredでありPromiseと互換性があるオブジェクト

あれ? お前の願い叶ってね?w

お前がなにを言いたいのかさっぱりわからんね。現状維持でなにが悪い?
お前の根本的な間違いは、jQuery.Deferredを使ってjQuery.Deferredオブジェクトを作るときの
使い方が違うから、学習コストが〜って言ってるだけだろ?
だがそもそも(jQuery内部以外では)jQuery.Deferredを(今の時代は)使う必要がないから
学習コストもなにもねぇだろ。

新しく使う人→Fetch API使うからDeferredの学習コストは0
前から使ってる人→すでに知ってるからDeferredの学習コストは0

現状維持ならどちらの人でも学習コスト0だろ。
むしろお前の言うようにajaxの戻り値をPromiseにしたほうが互換性なくなるから
その違いを埋めるための学習コストやコード修正コストがかかるんだが。

もう少し論理的に考えな。お前は一体どうしてほしいんだ?
0140Name_Not_Found垢版2016/07/05(火) 02:29:02.21ID:???
> jQuery.Deferredが要らんというならさっさと廃止するようにリクエストしろ

重要なのはDeferredがPromise互換になることであって
Deferredをなくすことじゃないんだよ。
DeferredがPromise互換になることで、Promise.allなどの引数に使えるようになる。

そしてDeferredがPromise互換になることは実現済み。
だからこれ以上Deferredを変える必要はない。

むしろDeferredいらん、Promiseに変えろと言っていたのは
お前だったはずだが?廃止するようにリクエストしろよw
014177垢版2016/07/05(火) 09:54:07.13ID:???
>>139
> 「お前が必要と思うもの」を押し付けてるのはお前だろ。
お前は俺に反論してきたが、俺はお前に何も要求していない(不当な反論があれば釈明はする)
例えば、>>124の「Promise.allをそのまま使え」は余計なお世話だ
(これにはさすがにカチンときて「jQuery.Deferredを廃止するようリクエストしろ」と要求したが、本意ではない)
jQuery.Deferredを使うならjQuery.whenで事足りるからな
「jQuery.Deferredを(今の時代は)使う必要がない」とかいうお前の勝手な考えはどうでもいい

> 新しく使う人→Fetch API使うからDeferredの学習コストは0
お前が何度も指摘しているFetch APIもまるで関係がない
>>130に書いたようにajax()の返り値がPromiseになることを望んでないからな
お前は異常なほどに「jQuery.ajaxの返り値」に拘っているが、俺は一言もajax()には触れてない

> jQueryは自前でPromsiseを実装しなければいけなくなる。
その通り
jQuery.DeferredはPromiseのPolyfillであれば良い

ここまでの流れは基本的には>>111の指摘通り
俺は俺の思想を主張するが、お前はお前の思想を主張するだけ
思想の違いを理解するために説明しあうことは有意義だが、相手の思想を撤回させようとするのは無駄な事だ
お前はそれをしようとしてる
0142Name_Not_Found垢版2016/07/05(火) 14:39:59.02ID:???
jQuery.Deferredを廃止してjQuery.Promiseが実装されれば>>77の望みは達成できるのかもしれないね
014377垢版2016/07/05(火) 15:23:18.67ID:sEI91sKd
>>142
確かにjQuery.Deferredを書き換えるよりも現実的だな
0144Name_Not_Found垢版2016/07/05(火) 22:04:58.42ID:???
>>141
> 例えば、>>124の「Promise.allをそのまま使え」は余計なお世話だ

なぜ? Promise.allを使いたければ、標準のPromise.allを使えばいいだろ?
なんでそこで、Deferred.allを使いたいと思ったんだ?

> jQuery.Deferredを使うならjQuery.whenで事足りるからな
事足りるんじゃなくて、えとな。話聞いてる?
DeferredはPromsieが登場するよりも前に生まれたの。
事足りんじゃなくて、当時はそれを使うしかなかった。

今はPromiseがあるから、それを使えばいいだろ。
DeferredはPromiseと互換性があるのだから
Promiseのように使うことができる。

jQuery.Deferredオブジェクトを"作る" ときにはPromiseの作り方と違うから
学習コストはいるが、そこでちょっと待てって話だよ。
jQuery.Deferredオブジェクトを作ることがあるのかと。

答えは "ない" だ。昔(Promiseがなかった時代)はjQuery.Deferredを汎用的なPromiseの代用として
使う事もあったかもしれないが、今はPromiseをそのまま使えばいいのだから、もはや作ることはない。
PromiseとDeferredのオブジェクトの作り方は違うが作ることはないのだから学習コストも発生することはない。

今はjQueryのAjax関連の戻り値として、Promiseオブジェクトと互換性のあるDeferredのオブジェクトが
でてくるだけでその戻り値はPromiseオブジェクトであると思って使えば良い。互換性がある。
だから学習コストはかからない。

現状でお前の言う学習コストはどこにもかからないんだよ。

> 「jQuery.Deferredを(今の時代は)使う必要がない」とかいうお前の勝手な考えはどうでもいい
それをいうなら、お前の勝手な考えはどうでもいいw
0145Name_Not_Found垢版2016/07/05(火) 22:07:06.43ID:???
>>141
> お前は異常なほどに「jQuery.ajaxの返り値」に拘っているが、俺は一言もajax()には触れてない

お前がなぜajaxに触れていないかのほうが問題。
jQueryでDeferredがでてくるのはajaxの戻り値としてだけだ。

jQuery.ajaxの返り値に拘るなというのなら、じゃあ聞こう。
どこで Deferred がでてくるんだ?

お前は何にこだわっているのかという質問だよ。
0146Name_Not_Found垢版2016/07/05(火) 22:08:14.58ID:???
>>142
> jQuery.Deferredを廃止してjQuery.Promiseが実装されれば>>77の望みは達成できるのかもしれないね

そこは>>77の望みってなんだよwwwって笑うところだねw

さて何だったかねぇ。
0147Name_Not_Found垢版2016/07/05(火) 22:09:28.07ID:???
何か目的があって>>77はjQuery.Promiseに変えろと言ってるわけじゃないんだよね。
jQuery.Deferredが気に食わないからjQuery.Promiseに変えろと言ってるだけ
気に食わないだけで、肝心の気に食わない理由がない。
0148Name_Not_Found垢版2016/07/05(火) 22:18:09.13ID:???
「jQuery.Deferredを廃止してjQuery.Promiseが実装されれば>>77の望みは達成できるのかもしれないね」

>>77「確かにjQuery.Deferredを書き換えるよりも現実的だな」

「jQuery.Promiseが実装されれば何が嬉しいんだい?」

>>77「jQuery.PromiseはES6のPromiseと全く同じだから学習コストが下がる!」

「全く同じというのならPromiseをそのまま使えばいいのでは?」

>>77「・・・」


ここまでが想定済みの流れw
014977垢版2016/07/05(火) 22:21:33.99ID:sEI91sKd
PromiseもFetch APIも実装されてないブラウザがある以上、素のままでは書けないのでPolyfillを適用する必要がある
jQueryを使うなら他にPolyfillライブラリを適用するコストをかけたくないからjQueryだけで完結できれば一番良いというだけ

俺の望みは>>124で書いたことですべて
お前に伝わってないようだが、釈明するのは時間の無駄だと悟ったのでもうしない
悪しからず
0150Name_Not_Found垢版2016/07/05(火) 22:25:07.59ID:???
ちなみにDeferredをPromise.allの引数としてそのまま使えることの証明

https://jsfiddle.net/axL7p4d4/1/

function timeout(ms) {
 return new Promise(function(resolve, reject) {
  setTimeout(function() {
   resolve();
  }, ms);
 });
}

Promise.all([
 timeout(3000),
 $.get('/'),
 timeout(3000),
]).then(function(data) {
 console.log(data[1].split("\n")[0])
});
0151Name_Not_Found垢版2016/07/05(火) 22:31:32.31ID:???
>>149
> PromiseもFetch APIも実装されてないブラウザがある以上、素のままでは書けないのでPolyfillを適用する必要がある
> jQueryを使うなら他にPolyfillライブラリを適用するコストをかけたくないからjQueryだけで完結できれば一番良いというだけ

それについてはとっくにレスしたよね?

だからPolyfillを適用すれば良い。標準のFetch APIを使うならばjQueryをajax用途として
使う必要はない。だからjQuery 3.0でajax部分を取り除いたSlim buildができたわけ。

jQueryがいくら頑張ろうがPolyfillになることはない。$.Promiseとかになるんだから。
だからお前の目的であるはずの標準APIを使うことはできない。

jQueryでは標準APIと同等のものになることはないのに、
なんでお前はPolyfillではなくjQueryを使おうとしてるんだ?
そこが意味わからんよね。言ってることとやろうとしてることが矛盾してるだろ

標準大好きならば、標準APIのPolyfill + jQuery 3.0 Slim buildの一択だろ。
jQueryはDOM操作用のライブラリに専念させろよ。
0152Name_Not_Found垢版2016/07/05(火) 22:32:50.45ID:???
>>149
> お前に伝わってないようだが、釈明するのは時間の無駄だと悟ったのでもうしない
それがいいんじゃね?w

俺はお前の言うこと全てに対して反論をしている。
そしてお前は言い返すのをやめた。

万事解決w
0153Name_Not_Found垢版2016/07/05(火) 22:40:40.79ID:???
結局>>77が一番jQueryを使い続けたがってるってオチかw

jQueryが提供しているAPIにはjQuery.eachやjQuery.mapのように
当時は標準JavaScriptにはなかったが、今は標準で提供されている機能がある。

超古いブラウザのサポートが必要ならjQueryのメソッドを使うが
そうでない場合には俺は標準のメソッドを使っているよ。

Promiseも同じ扱いだろ。現在非対応のブラウザにも対応する必要があるなら
jQuery.Deferred(もしくは PromiseのPolyfill)を使うことになるが、
近い将来Promiseを使えば良くなる。jQuery.Deferredを使う必要はない。

その今の時代においてjQuery.Promiseに仕様変更してまで
jQuery.Promiseを使いたいっていう考えが意味不明。
素直に標準のPromiseを使えばいいじゃねーかw
0154Name_Not_Found垢版2016/07/06(水) 12:07:53.48ID:???
意味不明なら無理に反論しなけりゃいいのに
ここは相変わらずだな
0155Name_Not_Found垢版2016/07/06(水) 12:56:19.98ID:???
荒らしに餌やってる>>77も似たようなもんだよ
0156Name_Not_Found垢版2016/07/06(水) 22:24:18.87ID:???
>>154
「意味不明なら無理に反論しなけりゃいい」っていう考えがおかしい。

意味不明なことを言っているのなら、意味不明と言ってあげることが本人のためだし
意味不明ということで、相手に反論の余地を与えている。

そこで相手がちゃんと意味を説明できれば、それでいいんだが、
意味不明と言われて黙るってことは、どういうことかがわかるでしょう?

意味不明だっていうことは反論じゃない。
誤字脱字の指摘と同様、意味を明確にしろっていう指摘でしかないよ
(誤字脱字を指摘した程度で、反論したって思うやつはいないw)
0157Name_Not_Found垢版2016/07/07(木) 07:42:18.92ID:???
意味不明なら意味を理解しようと努力するのが普通
意味不明な理由を「相手が自分よりはるかに知識量が低いから頓珍漢な事しか言えない」と決めつけて理解を放棄している時点で議論が成り立ってない
自分が相手より格上だと確認して優越感に浸っているだけ
0158Name_Not_Found垢版2016/07/07(木) 08:11:23.11ID:???
意味不明がゲシュタルト崩壊してきた
0159Name_Not_Found垢版2016/07/07(木) 09:08:42.93ID:???
>>157
> 意味不明なら意味を理解しようと努力するのが普通
じゃああんたは努力すれば?w
0160Name_Not_Found垢版2016/07/07(木) 23:31:40.87ID:???
そもそも、77が理解できないのは>>156だけだろ
あれだけ説明されてまだ意味不明とか言ってる時点で読解力が欠如してる
0161Name_Not_Found垢版2016/07/07(木) 23:46:52.83ID:???
>>160
じゃあまとめてみる?

>>77の主張・・・jQueryのDefferedを廃止してPromiseを使え。

俺の主張

・DefferedはPromiseと互換性があり混ぜて使える。
・互換性がある今DefferedとPromiseの大きな違いはオブジェクトを生成するときだが
Deffered内部以外でDefferedオブジェクトを作る必要はない
・Defferedオブジェクトが作りたいならば、代わりにPromiseを使えば良い。
・jQueryでDefferedが戻り値になっているのはAjax関連だけである。
・jQueryでDefferedを引数に取るものはない。
・互換性があるから当然jQueryのAjax関連の戻り値のDefferedはPromiseと同じ使い方ができる
・DefferedはPromiseの機能+αでありPromiseに置き換えると機能低下になる
・Promiseに対応していないブラウザ(Android 4.4など)があるからDefferedを廃止することはできない
・標準APIを使いたい人はPromiseと同時にFetch APIを使うだろうから、そもそもjQeuryのAjax機能を使う必要はない。
・それを見越してjQueryはajax関連の機能を除いたSlim buildを用意しており標準に適合するようになっている。
・つまりjQueryはDOM操作用のライブラリである。


まとめ
標準大好きな人
→ jQueryのAjax関連機能ではなく標準のFetch APIを使う(jQueryはDOM操作用として使う)から学習コストは下がる。

古いブラウザに対応する必要がある人
→jQueryのAjax関連機能を使う。戻り値はPromise互換なので標準Promiseと同じ使い方ができるから学習コストは下がる。

jQueryにどっぷり使ってる人
→Defferedオブジェクトを作ったりすることにすでになれてるから変わらない方が学習コストが下がる。

反論あるのならお待ちしています。
0162Name_Not_Found垢版2016/07/09(土) 13:10:02.62ID:???
99のいう学習コストはDOM API習得済/jQuery初心者が対象だろうにjQuery習得者の学習コストに置き換えてる
ホント論理のすり替えが好きだよな
0163Name_Not_Found垢版2016/07/09(土) 13:26:38.08ID:???
>>162
> 99のいう学習コストはDOM API習得済/jQuery初心者が対象だろうに

話をちゃんと読む気がないのか?

DOM API習得済であれば、当然標準のPromiseとFetch APIも習得済みだろ
jQueryはDOM操作専用に使って、Ajax部分はFetch APIを使うから、
Defferedは出てこないって話なんだが。
0164Name_Not_Found垢版2016/07/09(土) 18:24:20.90ID:???
>>163
そんなんならjQueryなんか要らんわ
jQuery使ってんのにPolyfillまで適用するのは面倒くさすぎる
あまえのFetch APIを使えという指示に従う必要はないから
0165Name_Not_Found垢版2016/07/09(土) 18:55:57.46ID:???
jQueryが気に入らないから書き換えたいんだ
→jQueryが気に入らないなら使わなければいいよ
→く( ゚д゚)ポカーン
0166Name_Not_Found垢版2016/07/09(土) 20:01:07.72ID:???
>>165
なんでわざとらしく間違えるから。
どうせやると思ったからあえて
「jQueryはDOM操作専用」って言ったにもかからわず
俺がjQueryを使うなと言ったことにする。

はっきり言うけど、あんた卑怯だよね。
0167Name_Not_Found垢版2016/07/09(土) 20:02:33.29ID:???
>>164
> jQuery使ってんのにPolyfillまで適用するのは面倒くさすぎる
ならjQuery使えば?

> あまえのFetch APIを使えという指示に従う必要はないから
誰もお前に言ってないよ。標準を使いたいって人はFetch APIを使えばいいと言ってるだけ。
jQueryのAjax関連の戻り値をPromiseにしたって、一部しか標準になってない。
標準がいいならばFetch APIを使うのが一番だろ?
そしてjQueryはDOM操作専用で使えば良い。
0168名無しさん@そうだ選挙に行こう! Go to vote!垢版2016/07/10(日) 08:49:37.11ID:???
>>166
> 「jQueryはDOM操作専用」って言ったにもかからわず
「jQueryはDOM操作専用」なら、ajaxもDeferredも存在しないはずだが?
てめーの勝手なイメージを押し付けているだけという事にいい加減気が付け
0169名無しさん@そうだ選挙に行こう! Go to vote!垢版2016/07/10(日) 09:03:37.49ID:???
>>168
まーたわざとらしく間違える

「jQueryはDOM操作専用に使って」って言ったのに
「jQueryはDOM操作専用だ」と言ったことにしようとしてる。
本当にお前卑怯だな。

jQueryは最初はDOM操作+ブラウザ間の違いの吸収+Ajaxとして作られた。
ブラウザ間の違いが減って、使いやすいAPIがでてきて
ようやくjQueryに追いついてきたから、
jQueryはDOM操作専用として使えば十分だって話だ。

逆に言えば、DOM APIの設計が変わらない限り
jQueryはDOM操作用のすぐれたライブラリといえる。
(設計を変えるっていうのはjQueryオブジェクトのようなDOMコレクションに
DOM操作メソッドを追加するっていうことね。これをやらずにいくら
メソッドを増やしたところでjQueryには追いつけない)
0173名無しさん@そうだ選挙に行こう! Go to vote!垢版2016/07/10(日) 13:32:33.67ID:???
「標準に合わせる」これは素晴らしい
「非標準なもの」を使うと、特定のブラウザでしか
動かないものになるからだ。

という話がある。だから「標準」という言葉を使った。

だがよく考えてみよう。

標準の反対は非標準、つまり標準ではないものを使うことであって
標準なものを使っているライブラリにたいして
標準のメリットを言ったところで意味は無いのである。
0174Name_Not_Found垢版2016/07/10(日) 22:05:08.89ID:???
とりあえず、プログラム板に統合する事に賛成するということはいっておく
0175Name_Not_Found垢版2016/07/10(日) 22:19:22.40ID:???
どこでもいいよw
俺は人がいるところに行くだけだから。
0176Name_Not_Found垢版2016/07/10(日) 23:51:23.33ID:???
結局、統合しないのか
あの議論は何だったんだ
0177Name_Not_Found垢版2016/07/10(日) 23:56:27.12ID:???
なんか俺を排除するための議論だったみたいな感じなんだが
そんなの関係なく俺は適当にやるし、
仲間(?)割れしてなにやってるんだろうなって感じだよなw
0178Name_Not_Found垢版2016/07/11(月) 00:00:34.46ID:???
こっちのスレで議論しなければ認めないという人もいたみたいだねえ
このスレの住民が向こうに書き込んでるとは考えなかったんだろうね
0179Name_Not_Found垢版2016/07/11(月) 00:11:23.47ID:???
そして一番マヌケなのは、隔離(笑)できたと思っている所。
jQueryの話をする場所が増えているだけなのに気づいていない。
0180Name_Not_Found垢版2016/07/11(月) 00:29:28.48ID:???
荒らしはスルーが基本だが、この粘着率は異常だな
0181Name_Not_Found垢版2016/07/11(月) 00:30:22.92ID:???
>>180
俺としてもスルーしてほしいんだが(笑)

そうすれば、質問者 と それに答える俺 という
素晴らしい流れてできるだろう?
0182Name_Not_Found垢版2016/07/11(月) 00:39:00.89ID:???
プログラム板の話ならjQueryの感想書いてつなぎ留め云々にドン引きだわ
炎上商法と比べたらド過疎の方がいくらかマシ
0183Name_Not_Found垢版2016/07/11(月) 00:39:10.55ID:???
会話が成立していると思っているところが鈍感さんだね
0184Name_Not_Found垢版2016/07/11(月) 00:41:22.55ID:???
ID強制したいって気持ちは理解できるからプログラム板に移ることは賛成なんだけどね
0185Name_Not_Found垢版2016/07/11(月) 00:45:21.31ID:???
褒められたことではないが、感想云々は炎上商法とは違うんじゃないか?
感想を書くだけで炎上するとは思えないが
0186Name_Not_Found垢版2016/07/11(月) 00:50:10.12ID:???
俺としてはID強制することで何が解決するのか
さっぱり分からないが、まあ俺としてはNGIDにしてくれることで
反論が一切されないっていうのは楽な状況でもある
(だってNGIDにしたら見えなくなるから反論したくても分からない)
0187Name_Not_Found垢版2016/07/11(月) 01:19:45.42ID:???
まああっちのスレ見てて思うのは、俺が荒らしているような事を言ってるが
俺がいなくても荒れるじゃねーかって話。

あの例のテンプレ押し付けようとしているやつが
一番の元凶なんだよな。本人がわかってないのが一番たちが悪い。
0188Name_Not_Found垢版2016/07/11(月) 01:35:00.50ID:???
子のスレから出張しているjQuery荒らしが完全にスルーされていて笑った
0190Name_Not_Found垢版2016/07/11(月) 09:38:16.58ID:ZUSJjugG
>>186
ageればIDでるんでよろしく
0191Name_Not_Found垢版2016/07/11(月) 11:14:59.37ID:???
こいつは「NGIDにしたはずなのになぜ反論するの?w」と反論するための布石をうってるだけだから何かと理由をつけて反論したりしないだろうな
2chブラウザで sage チェック外すだけだから「面倒くさい」は理由にならないけどな
0192Name_Not_Found垢版2016/07/11(月) 11:16:01.19ID:???
× 何かと理由をつけて反論したりしないだろうな
○ 何かと理由をつけてIDを出さないだろうな
0193Name_Not_Found垢版2016/07/11(月) 12:42:26.40ID:???
ID出しても自演だのIPコロコロ変えてるだのいうだけだろうなぁ
0194Name_Not_Found垢版2016/07/11(月) 17:21:05.21ID:???
IDをコロコロ変えたらNGIDしてほしい要望と矛盾するけどな
0195Name_Not_Found垢版2016/07/11(月) 22:48:23.61ID:???
>>188は俺じゃないから」の体で逃げを打つと見た
0196Name_Not_Found垢版2016/09/26(月) 17:46:07.72ID:???
ang2で2つの要素をforするにはどうすればいいですか?
定義リストをforで回したいです
0200Name_Not_Found垢版2017/05/24(水) 22:22:53.29ID:VTOU+3TY
fabric.jsで質問です。

<canvas id="canvas1" width="1200" height="800"></canvas>
var canvas = new fabric.Canvas('canvas1');

で正常に動作しています。タッチデバイスで#canvas1をフリックすると選択の枠が表示されます。当然ですが画面スクロールにはなりません。

canvasを表示させたまま一時的に選択枠を無効にして画面スクロールできるようにしたいのですがどうやればいいでしょうか?
一時的にとはチェックボックスによるユーザ操作でもいいです。

selection = false;
は選べないだけで画面スクロールにはなりません。その他それらしきを試してみましたがどれもうまくいきません。
canvas.off('mouse:down');
canvas.off('mouse:move');
canvas.off('touch:gesture');
canvas.allowTouchScrolling = true;

ちなみに実際は#canvas1と同サイズの複数canvas(#canvas2,#canvas3・・・)を position:absolute; で重ねています。
よろしくお願いします。
0201Name_Not_Found垢版2017/05/24(水) 22:48:43.64ID:???
>>200
試してないのでごめんだけど
透明なdivをcanvasの上に乗せちゃうってのはどうだろ?
0202Name_Not_Found垢版2017/05/25(木) 07:06:52.67ID:???
同じイベントを、2つの異なる用途で使うの?

そもそも、それは無理だろ。
イベントハンドラーの中で、if文で処理を分けるとか?
0205Name_Not_Found垢版2017/05/25(木) 22:01:09.84ID:???
みなさんありがとうございます。

>>201
#canvas2・・・とはどう違うのでしょうか?

>>204
変わりませんでした。
0206Name_Not_Found垢版2017/05/30(火) 22:13:52.27ID:???
jQuery UIを少しでもかじったことあるなら>>202のようなレスはしないはずなんだが
0207Name_Not_Found垢版2017/05/31(水) 10:18:56.74ID:???
reactをchrome-extensionのUI部分に使ってまして
サイドバーをiframeを使って作って画面に追加してるんですが
その部分をreact-devtoolが反応してくれません。
urlがchrome-extension://XXXX/sidebar.html
になっているからかと思っているんですがdevtoolで動作させる方法ご存じないでしょうか?
0208Name_Not_Found垢版2017/06/01(木) 16:55:51.39ID:???
https://codepen.io/valscion/pen/jBNjja?editors=0010

react公式にあるドキュメントのコードなんですけど
62行目ののメソッド、
this.setState({scale: 'c', temperature});
でなぜ動くのかわかりません
自分は
this.setState({scale: 'c', temperature: temperature });
だと思うのですが、実際コードをこのように書き換えてもちゃんと動きますし
どうしてなのか理由を教えてほしいです
0210Name_Not_Found垢版2017/06/13(火) 22:17:04.17ID:???
ルーティングのライブラリでおすすめのものはなんでしょうか?
使い方が簡単でシンプルのものが欲しいです。
0212Name_Not_Found垢版2017/06/15(木) 02:16:21.52ID:???
病気持ちみたいな性格してるな
こまけー
0214Name_Not_Found垢版2017/06/15(木) 08:50:17.14ID:???
>>210
ルーティングはフレームワークと密接に
結びついているものなので
単体では存在しません。
0215Name_Not_Found垢版2017/06/15(木) 20:58:53.54ID:???
zipなら定番はどれですか?
他にも圧縮率など優れたライブラリがあったら教えて欲しいです
0216Name_Not_Found垢版2017/06/16(金) 00:23:51.16ID:???
定番があるほどポピュラーなもんじゃないからなぁ
npmでzipやunzipで検索して使いやすそうなもん選べばいいと思うよ
0218メガネートさん垢版2017/07/01(土) 15:08:55.82ID:???
PixiJSでcontainer使って画像表示する場合で
( container = new PIXI.Container();  )
幾つかのパーツをひとまとめにした画像をスプライトに分割して使う時はさ

new PIXI.BaseTexture(source, scaleMode, resolution)

でペーステクスチャ作って

new PIXI.Texture(baseTexture, frame, orig, trim, rotate)

でパーツに分けて new PIXI.Sprite(texture) でやるのかなと思ったけど
デフォなやり方ってあるんすか?

あと分割せずにRectangleとかで範囲指定して
表示領域を変化させる方法とかあります?
0221Name_Not_Found垢版2017/07/03(月) 17:20:07.45ID:???
>>218
jsonでテクスチャアトラスデータつくってあとはそこで指定した名前でspriteつくるだけじゃないのかな?
0222メガネートさん垢版2017/07/03(月) 21:40:57.60ID:???
>>221
ありがとう
どこかのブログで見かけはしたけど
わたしにはちょいむずいな(ヽ´ω`)
0223メガネートさん垢版2017/07/03(月) 22:13:15.04ID:???
テクスチャアトラス記事 真下にあったわ・・・(ヽ´ω`)
0224Name_Not_Found垢版2017/07/07(金) 23:46:58.44ID:???
>>215
jsZIPが簡単
だけどjsでM単位のファイルはやめとけよ。
0225Name_Not_Found垢版2017/07/12(水) 15:20:57.31ID:???
重たい処理だから直ぐに停止するんだよな。
0226Name_Not_Found垢版2017/07/16(日) 22:27:32.76ID:???
html2canvas(要素+canvas)をSVGに変換する方法ありますか?
0227Name_Not_Found垢版2017/07/17(月) 02:40:34.91ID:???
jsでZIP処理するときは小さなファイルのみにしておけよ。
Chromeで試したけどどれもこれも止まって使い物にならんかったぞ。
0228Name_Not_Found垢版2017/07/17(月) 12:51:07.82ID:???
>>227
使い方が悪いのでは?
巨大なファイルで時間がかかるのはわかりきっているのだから
ライブラリに細かく分割して処理するための機能があるか、
もしなければ別スレッドでやればいいだけだし
0229Name_Not_Found垢版2017/07/20(木) 16:18:21.45ID:???
その通り
ただ10MBくらいだと同期でもいいくらいのはずだし、
反対に100MBを超えてくるとブラウザのメモリ制限に引っかかる恐れが出てくるので
シーケンシャルに作成しながらDBに保存していったり、サーバに送ると言った手間が要りそう
0231Name_Not_Found垢版2017/07/22(土) 01:39:46.03ID:???
元からnodeの話じゃなかったの?
クアイアント側でzipするの?
0232Name_Not_Found垢版2017/07/22(土) 05:32:42.61ID:???
>>230
今の時代だよ
数百MBのファイルを扱うと
実際はその2倍、3倍のメモリを使うことにもなりかねないからね
デスクトップEdgeでも512MBしか保証されていない
0233Name_Not_Found垢版2017/07/22(土) 06:34:46.57ID:h2s9bK1B
速さでは遅延評価する、Lazy.js が速いらしいけど、
Lazy.js > Lo-Dash > Underscore

Lazy.js って使われているの?
version 0.4.2 だけど
0234Name_Not_Found垢版2017/07/22(土) 06:50:16.61ID:???
>>230
ZIPファイルをJavaScriptで扱ったけど1.1GBまでできたぞ
0235Name_Not_Found垢版2017/07/22(土) 12:02:02.95ID:???
>>232
> 数百MBのファイルを扱うと
> 実際はその2倍、3倍のメモリを使うことにもなりかねないからね

ん? なんか根拠あっていってんの?
まさか5MBのファイルを扱う時に15MB使っていたから、
100MBなら300MBに違いないとか思ってんの?

5MBのファイルに+10MBのワークメモリを使用するのなら
100MBなら+10MBで110MBですよ
なんで3倍とか思っちゃったのかな?w
0236Name_Not_Found垢版2017/07/22(土) 12:03:02.63ID:???
>>233
> 速さでは遅延評価する、Lazy.js が速いらしいけど、
それって遅延評価することで計算が省ける場合に限っての話でしょ?

殆どの計算は遅延評価のオーバーヘッドがないぶん
普通に計算したほうが速いと思うけど
0238Name_Not_Found垢版2017/07/22(土) 15:28:48.00ID:???
>>235
何で煽ってるのかわからないな そりゃ実装の工夫次第だけど、
まず原本ファイルがあって、各チャンクを圧縮したり、暗号化したり、
最後にZIPファイルとしたり固めてたら、
一時的に元ファイルの2倍3倍使ってしまうこともあり得るでしょ

だから512MBが上限だと思うなら、そういう『工夫のない実装』だと
100MBくらいが安心してサポートできる上限だ
100MBを超えてくればメモリ管理を特に意識する必要が出てくる
と言ってるだけなんだよ? 全くもって自明でしょ?
0239Name_Not_Found垢版2017/07/22(土) 15:58:14.63ID:???
工夫のない実装なはずだという妄想でしょw
0241Name_Not_Found垢版2017/07/22(土) 20:33:27.48ID:???
>>239,240
俺の至らないレスで気分を害したことは謝る
本当に済まない
本当に済まない
本当に済まない

だけど俺は終始真面目に話をしてるんだから
頼むから煽らずに建設的な話を続けて欲しい
なぜそんなに煽ってくるのか困惑してる
0242Name_Not_Found垢版2017/07/22(土) 20:42:48.59ID:???
あと後付け厨とか言うのもよく理解ができない

突っ込みに対して補足を入れたら後付け厨なのか?
それとも最初から突っ込みが絶対入らない呪文を書けるとでも思ってるのか?

いっぺんに思考の全てを文章にして相手にぶつけることなんてできないんだから
こうして会話して行ってお互い真意を探るのは良いことだろうよ
それをあざ笑ったり煽るのは、真意を探ろうとかいう気持ちじゃなくて
最初から攻撃目的の突っ込みじゃないのか?

俺はそれは絶対に間違ってると思うよ
0243Name_Not_Found垢版2017/07/22(土) 21:02:18.06ID:???
コミュニケーションを試みるのは立派だと思うけど
たった一行の草生やした煽りレスに一々構うのは労力の無駄だぞ
0244Name_Not_Found垢版2017/07/22(土) 21:15:43.42ID:???
心当たりあることを指摘されると許せなくなるような基地外多すぎだろ。
0245Name_Not_Found垢版2017/07/23(日) 03:18:09.42ID:???
またいつもの基地外か
こいつは相手したらだめだよ
小学生並の屁理屈で自分が偉いと勘違いするタイプ

そもそも、相手の話のコアが通じない時点で立派なコミュニケーション障害なのにその認識の差異を必死でアピールというどうしようもないやつ
0246Name_Not_Found垢版2017/07/23(日) 03:20:19.58ID:???
いつもの基地外は俺のはずだがまあ良いやw
0247Name_Not_Found垢版2017/07/23(日) 08:36:36.76ID:???
>>234
>>232
>>238

1GBの動画fileをスライス

スライスしたfileをAES暗号化

ローカル上でZIP化

ローカルに保存


IE11で何度か試してみたけど1GBまでは成功したぞ
0249Name_Not_Found垢版2017/07/23(日) 11:49:39.95ID:???
保証と上限はまた話が変わってくるだろうからな
逆にブラウザが保証してくれてもOSにブラウザプロセス毎殺されることもあるだろうし

まあ普通のデスクトップツールならファイルとして書き出しながら処理するから
極端な話圧縮辞書くらいしかメモリ使わなくても済むが
WebのJSでやるのはちと大変だろうな
0250Name_Not_Found垢版2017/07/23(日) 11:55:01.36ID:???
>>248
環境によるなら、3倍メモリを使うのも環境によるわけで、
えらっそーに(笑)断言するべきじゃなかったですねwwww
0252Name_Not_Found垢版2017/07/23(日) 14:34:44.02ID:???
だれも環境によらず3倍のメモリを使う!なんて断言してはいないな
0253Name_Not_Found垢版2017/07/23(日) 15:16:59.42ID:???
>>250
主観が標準
思い込んだことが標準
否定されると事実をねじ曲げて牙を向ける
指摘されると挙げ足をとって話をそらす

またいつものこう言った輩だろ。
主観条件を想像して平気でこんな発言している。

>>実際は2倍、3倍のメモリを使うことにもなりかねないからね



>>230
今の時代だよ
数百MBのファイルを扱うと
実際はその2倍、3倍のメモリを使うことにもなりかねないからね
デスクトップEdgeでも512MBしか保証されていない
0254Name_Not_Found垢版2017/07/23(日) 15:30:10.77ID:???
どや? 不安になってきたろ?
そうや3倍とかにもなりかねんのや
不安だろう?
我が言霊の力じゃよ
0255Name_Not_Found垢版2017/07/23(日) 15:31:34.22ID:???
何の根拠もないことでも
こうやって言葉で揺さぶりをかければ
相手に不安を与えるもんなんじゃよ
これが人生経験というものかのう
0256Name_Not_Found垢版2017/07/23(日) 16:57:31.44ID:???
よく分からんが、人生経験豊富な揺さぶりで不安になったから噛み付いてたってこと?
0257Name_Not_Found垢版2017/07/23(日) 17:10:42.48ID:???
ほっほっほ。3倍じゃよ3倍。3倍にもなるんじゃ。
下手すれば5倍、いや10倍、もっといけば100倍にも
なるかもしれんのう。そうなったらどうするんじゃ?
0258Name_Not_Found垢版2017/07/23(日) 17:22:19.02ID:???
思いつきの屁理屈で絡んで、どうにもならなくなったら茶化して煽るとかさ

おまえって生きてて悲しくならないの?

勝てない喧嘩なら最初からふっかけるなよ
その判断すらできないからいつもそんな惨めな人生おくることになるんだぞ
0259Name_Not_Found垢版2017/07/23(日) 17:38:51.58ID:???
>>253
そもそもローカルで512Mとか技術ありませんと認めたようなもんだろw
Edgeでjs制御すればGB単位の処理する方法はあるからな。
まるで道具の使い方を知らない土人だな。
0260Name_Not_Found垢版2017/07/23(日) 17:53:05.25ID:???
10MBのファイルでも下手すりゃ1GBのメモリ食うよ
0261Name_Not_Found垢版2017/07/23(日) 18:30:10.71ID:???
なんで極端な話を持ち出すの?
0262Name_Not_Found垢版2017/07/24(月) 05:39:43.43ID:???
ワーキングメモリが512bitしか無いのに、全て思い込みで埋まってる奴が要るようだな
その何GBでもOKな自身のEdgeに少し分けてもらえばいい
0265Name_Not_Found垢版2017/07/26(水) 21:14:19.08ID:???
お前が犯人だ!違うっていうのなら証拠を見せろ!
アリバイがないことがお前が犯人の証拠!
0266Name_Not_Found垢版2017/07/27(木) 04:47:56.73ID:???
>>261
正論や事実を突きつけられると突拍子も無いことや極端な例えを持ち出す人とたまにいるよね。
0267Name_Not_Found垢版2017/07/27(木) 06:15:32.29ID:???
極論と言うか、話の意味が分かっていない
0268Name_Not_Found垢版2017/07/27(木) 06:31:13.42ID:???
天の邪鬼、基地外、図星、声闘
これに該当する人も必ず書き込みするよ
0269Name_Not_Found垢版2017/07/27(木) 08:36:35.08ID:???
>>261
人と違う考え方が格好いいとかズレた考えの人もいる。
ただ偏屈なだけかも。
0270Name_Not_Found垢版2017/07/27(木) 14:56:38.67ID:???
人と違う考えをあえて提示するのは有益だが
今回のは見当違いというか噛み合っていない
0273Name_Not_Found垢版2017/08/09(水) 04:10:29.38ID:KHLiGKM9
underscore, lodash の機能を、左右に表示して比較した、サイトはある?
どこかで、見たような気がするのだが、探せない

それと、lodash の日本語訳は無い?
無いよな

結局、lodash厨は、この板で普及活動だけして、日本語訳を作らなかったのか
0274Name_Not_Found垢版2017/08/09(水) 21:27:21.01ID:???
偉そうな言い方で英語がわかりませんって言っても
お前の能力の低さは隠せないぞw

lodash、英語とか日本語以前に
コードがあるからそれで十分じゃね?
関数の使い方と戻り値から何をしてるのかわかるでしょ
0275Name_Not_Found垢版2017/08/10(木) 01:33:21.15ID:???
お年寄りは日本語じゃないと拒否反応起こしちゃうからね
0276Name_Not_Found垢版2017/08/11(金) 22:34:53.27ID:???
ブラウザとNode.js両方で使えるライブラリを書くときってisomorphic-fetchとかfetch-ponyfillみたいなfetch API系とrequest(-promise), どっちが流行ってる?
0277Name_Not_Found垢版2017/08/14(月) 05:31:57.47ID:???
なにをしたいのか分からんけど
たとえば何か1ファイルを取ってくるのだったら
fetchXxx()という名前の関数にするのが良いと思うぞ
0278276垢版2017/08/14(月) 18:25:31.60ID:fFVNiceo
ライブラリ内部でHTTP通信する場合に採用するライブラリの選定について, であります
0279Name_Not_Found垢版2017/08/15(火) 14:57:42.67ID:???
そこはfetchかrequestかに限らずよく吟味した方が良いとも言えるし、
直接ユーザーに出さないのなら殆ど開発者の好みの問題でどうでもいいとも言える

ただね、Fetch APIっていうのはとても素直に見えて、
実は少し細かいことをやると特殊な仕様の宝庫だからね
つまり、結局は、ブラウザ上で「フェッチ」するためのAPIであって、
Nodeでもどこでも使いやすい、汎用的なhttp通信のためのAPIではないということ

だからおれは、もしAPIを提供するときにfetch感を出すときは、取得する物と方法を決め打ちして、
中間を見せないfetchXxxという名前の関数にしなさいといったの

で、結局はfetchでもrequestでも、環境にそぐわないAPIの叩き方、使われ方をされることに
どういう対処しているのかが、例え君がそういう使い方をしないとしても、『良いAPI』を見極めるために重要だと思う

でも一番いいのは、http通信なんてコード量大したことないんだから、自分でラッパーを書くこと
そしてその名前をfetchでもrequestでも無いものにしておくこと
標準的な物に沿うことも重要だけど、それがはっきりしていない場合はあえて開き直って完全独自にすることも重要
0280Name_Not_Found垢版2017/08/15(火) 21:40:56.70ID:???
長文なだけで中身がないな
何が言いたいのか
0281Name_Not_Found垢版2017/08/15(火) 22:11:27.63ID:???
>>276
俺が先に書いておけばよかったね。といっても「どちらも流行ってない」が答え
事実だけど煽り見えるだけなので書くのが面倒で放置していたら長文野郎に絡まれたねw
まあ俺も長文野郎だけどw

>>279がごちゃごちゃ言い訳がましいことを言ってるのは
"ウェブ標準を推奨したいけど欠点があるから" なんだよ。
はっきり(今の)ウェブ標準はクソと言い放ってしまえばいいのだけれど
この人、ウェブ標準大好きな人だからそれが言えないんだろうねw

まず今の標準化されてるブラウザのFetch APIはクソ。なぜならもともとAjax(XHR)で
できていたはずのキャンセル機能や進捗情報ができなくなってしまっているから。
それもこれもPromiseなんか採用してしまったから。

だからFetchもRequestもPromiseを使っているものは現時点では全部アウト
そして今頑張ってFetch APIにキャンセルと進捗状況を取得できる機能が追加されようとしてる。
本来はPromiseに追加すべき機能だけど、Promise作ってる奴らが動こうとしなから
Fetch APIの方に組み込もうとしている(将来それがうまくいけばPromiseに移植されるかも)

このように現在は "ウェブ標準" のFetch APIは制限があり仕様は過渡期であるため薦めることができない。
そのことをはっきり言わないから>>279はごまかすようなレスになってる。俺ははっきりいう。
(今の)Fetch APIはクソ。Requestはウェブのような標準仕様がないのでクソ
Promiseを採用しているならば、それもクソ。よってどちらも流行ってるなんて言えるもんじゃない。

それから完全独自実装なんて手間がかかるだけ。バカがやること。これだけはやってはいけない。
とは言え現時点では標準もブラウザでネイティブに動かすのも諦めるしかない。
だからSuperAgentなんかが有名でいいんじゃないか? 将来は別の何かに置き換えることになるかもしれないが
その時、完全独自実装の大量のコードを読み解くよりも、
ライブラリを使って少ないコードでシンプルに書いていれば変更は楽になる。
0282Name_Not_Found垢版2017/08/16(水) 00:41:57.87ID:???
この荒らしに同調するのも癪だけど実際そんなところだよ
条件を満たすライブラリがあれば中の人が全部吸収してくれるからベスト
自分でXHRやhttp使ってラッパー書いてもいいけどね
0283276垢版2017/08/16(水) 01:09:41.21ID:???
成程, 確かfetchはprogress取得のためにReadableStreamを取れるようにして苦労してるみたいね
この辺はpolyfillで何とかなりそうだけど, これに加えてCookieの取り扱いがブラウザとnode-fetchで違っていて辛そうだと思った

promise自体がクソだとは思わないけど現時点で機能不足だというのは確かにその通りだと思うわ, 少なくともPromise/A+の現時点の規格では時間の掛かる処理にはとても使えない
progressとかcancelは一応under discussionみたいだし将来に期待しておくことにする(それまではQでも使えばいいのかな)

とりあえずSuperAgentとpromiseベースだけどprogressとcancelが出来るaxiosとで比較検討してみますわ
どうもありがとう
0284Name_Not_Found垢版2017/08/16(水) 10:30:28.47ID:???
その論調何度か聞くけど、別にfetch自体はまず今の仕様のPromiseを返すのでおかしくないと思うけどな
だってまずはヘッダを取得して、そこから更に何をするかとなるのが自然だから、そこまでは普通
fetchが出すResponseがReadableStreamを返す仕組みなのも苦労とかじゃなくてごく自然
ただReadableStream自体は微妙というかObservableであったほうが良いとは思う

そしてキャンセルはあるべきだけど、なぜか皆Promiseに付けろと思うけどそれは間違い
実際はPromiseに生えてたら凄い使いにくいし、Promiseの概念上分かりにくことになるのは考えたら分かる
だから、.cancelの提案なんてない。代わりにCancelToken型の用に仕組みが分離してあるものが提案されている
これならObservableにも使えるしずっと筋が良い
0285Name_Not_Found垢版2017/08/16(水) 10:48:31.20ID:???
> 実際はPromiseに生えてたら凄い使いにくいし

だからFetch APIはPromiseではないものを返すべきだってことなんだが。
お前の結論からもPromiseを返すのがおかしいという結論にたどり着いてるじゃんか

目的はPromiseを返すことではない。Promiseは手段でしかない。
時間がかかるから非同期を使う。ということはよくよく考えてみると
非同期は時間がかかる以上キャンセルと進捗状況の確認機能は必須であることに気づく

だからPromise自体筋が悪い仕様だったってことなんだよ。
0286Name_Not_Found垢版2017/08/16(水) 10:54:22.17ID:???
EcmaScriptのPromiseは基本的機能だけをサポートする
という考え方だから便利な機能はサポートされない運命

実用的なPromiseの一つであるbluebirdはキャンセル機能が搭載されている
http://bluebirdjs.com/docs/api/cancellation.html
0287Name_Not_Found垢版2017/08/16(水) 11:06:16.91ID:???
>>284
> 実際はPromiseに生えてたら凄い使いにくいし、Promiseの概念上分かりにくことになるのは考えたら分かる
それはあなたの感想ですよね?

> だから、.cancelの提案なんてない。
普通にあるが?
0288Name_Not_Found垢版2017/08/16(水) 11:11:26.24ID:???
誰かが妄想でFetch APIとPromiseに関する嘘の流れを作る前に
ここまでの流れを示しておくわ

Fetch の中断と Promise のキャンセル方法の標準化
https://blog.jxck.io/entries/2017-07-19/aborting-fetch.html

あーあー、本来はPromiseにキャンセル機能が搭載されて
シンプルになったはずなのになー。
理想の案ではなくて次点の案ですすんでるとはな
0289Name_Not_Found垢版2017/08/16(水) 11:16:39.97ID:???
> 代わりにCancelToken型の用に仕組みが分離してあるものが提案されている
今更に否定されたCancelTokenとか持ち出されてもw

> 要約すると以下のようなものだった。
>
> CancelToken (.NET の知見) という API 経由で Promise をキャンセルする。
> キャンセルはエラーとは違うため、 resolve/reject 以外に 3 つめの状態を追加する。
> しかし、結論から言うと議論の途中で頓挫してしまった。
>
> なんで頓挫したかの詳細は、仕様策定の中心だった domenic の悲痛な一言に集約されている。
>
> Why was this proposal withdrawn? #70
0290Name_Not_Found垢版2017/08/17(木) 20:57:58.96ID:???
頓挫は大袈裟。stage0から進ませて貰えなかっただけで、.cancelの様に棄却されたわけじゃない。
今最も、そして唯一のPromiseのキャンセル関連の仕様なのは間違いない。
0291Name_Not_Found垢版2017/08/17(木) 22:02:36.28ID:???
https://dictionary.goo.ne.jp/jn/162000/meaning/m0u/

とん‐ざ【頓挫】の意味

1 勢いが急に弱まること。また、計画や事業などが途中で遂行できなくなること。
「活動に一頓挫を来?(きた)?す」「不況で事業が頓挫する」


棄却に相当するものは事業が失敗する、会社が潰れるなどのことだよ。
頓挫というのは勢いが急に弱まる事を言う
0292Name_Not_Found垢版2017/08/17(木) 22:15:03.96ID:???
なんと言うか、頓挫というのはそれこそES6策定の頃からPromiseの在り方やメソッドに付いての議論がたくさんあって、
誰もが何らかの仕組みが早く欲しいと思い続けてきたキャンセル周りにおいて、その場しのぎにしかならない価値の薄い.cancelではなく
ようやく新しい構文だとか何もかも含めて全体的に上手くいきそうな提案が出てきたけどスムーズに進まなかったという、大きな期待と逸る気持ちがあってこそ出た大袈裟な失望の言葉なのに、
ES DiscussやMeetingを追ってすらもない奴らが自分の意見を肯定するためだけに書かれた気持ちや前提を汲まず悪用するのは気分が悪いね
0293Name_Not_Found垢版2017/08/17(木) 22:20:45.61ID:???
>>292
> 大きな期待と逸る気持ちがあってこそ出た大袈裟な失望の言葉なのに、

それはあなたの感想ですよね?
何処かに定義でもあるんですか?
0294Name_Not_Found垢版2017/08/17(木) 22:21:35.44ID:???
つまり頓挫、勢いが急激に弱まったと言い換えたら、それはずっと展開を追っていて各人の心の中の燃える期待感というか、安心感であって、
ステージが進まないのなんて珍しくないし、実際提案の勢いに変化が生じた訳ではない、ただキャンセル周りの仕様がサクサク決まることは難しそうという不安感は出てきた
とは言っても.cancelがあり得ない以上、似た仕様になる事は確実
0295Name_Not_Found垢版2017/08/17(木) 22:22:47.03ID:???
似た仕様になる もしくは 頓挫です
0296Name_Not_Found垢版2017/08/17(木) 22:28:00.67ID:???
>>293
じゃあまずどうして.cancelが失敗したのか、そして今CancelTokenは奴に否定されたのに残ったのかを考えた方が良い
その上で具体的な疑問があれば答えるから
0297Name_Not_Found垢版2017/08/17(木) 22:28:38.38ID:???
まあひとつはっきりしてるのは、今すぐFetch APIを使用するのは
リスクが大きいってことだな。

SuperAgentもしくはaxiosを使うのが現実的
0299Name_Not_Found垢版2017/08/17(木) 22:31:23.69ID:???
https://github.com/tc39/proposal-cancelable-promises
This proposal has been withdrawn

This proposal has been withdrawn by its champion and is no longer
active in the TC39 process. For reference to previous documentation
and specification work, see the Git commit history.


ちなみにwithdrawnには撤退という意味がある
0301Name_Not_Found垢版2017/08/17(木) 22:34:21.75ID:???
CancelTokenはなぜ仕様の内容が
削除されてしまったのか?


削除されたのにリポジトリを残してるのは
単なるあてつけだとかるが

ではなぜ
CancelTokenはなぜ仕様の内容が
削除されてしまったのか? 👀
Rock54: Caution(BBR-MD5:0be15ced7fbdb9fdb4d0ce1929c1b82f)
0302Name_Not_Found垢版2017/08/17(木) 22:38:48.90ID:???
>>296
> そして今CancelTokenは奴に否定されたのに残ったのかを考えた方が良い

残ってないよ。
リポジトリの中身は削除されてる
0303Name_Not_Found垢版2017/08/17(木) 22:57:36.26ID:???
すまん、完全に俺の言い方が悪い
元をたどれば>>284
CancelToken『型の用に仕組みが分離してあるもの』
と書いたように、俺はCancelTokenそれだけに拘って考えて言っていたのではない
例えば俺がstage0だなんだ言ったのはCancellation APIを意識してたから
そこんところごっちゃにしてたのは本当に謝る

CancelTokenが消えたのは、結局CancelablePromiseが否定されたのを、
じゃあcancel状態の代わりにelse状態を持ってればいいだろというように
結局皮が剥け切れて無かったから、そこを奴に付かれた
だから逆に言うと、「分離」してある形になるのはより確実になってきたと言える
俺が言いたいのはそこ
0304Name_Not_Found垢版2017/08/17(木) 22:59:43.13ID:???
いや、そんな言い訳はいらんわ。
今も生きてる仕様がどこに書いてあるかを言えばいい
0308Name_Not_Found垢版2018/02/18(日) 19:08:55.34ID:???
☆ 日本の、改憲を行いましょう。現在、衆議員と参議院の
両院で、改憲議員が3分の2を超えております。
『憲法改正国民投票法』、でググってみてください。国会の発議は
すでに可能です。平和は勝ち取るものです。お願い致します。☆☆
0309Name_Not_Found垢版2018/05/01(火) 19:03:22.41ID:l1wYHpV1
誰でもできる在宅ワーク儲かる方法
少しでも多くの方の役に立ちたいです
グーグルで検索するといいかも『金持ちになりたい 鎌野介メソッド』

NHNSG
0310Name_Not_Found垢版2018/06/18(月) 12:09:07.18ID:9uLJZxfn
incsearch.jsについて質問です。

データ内に、リンクなどのHTMLタグを書いた場合、
検索結果にも、そのタグや属性値などが出力されてしまいますが、
これを出力させずに、検索結果として得るにはどうすればいいでしょうか?


例えば、下記サイトの
ttps://hiromi-ayase.github.io/AnimeDB/
で「http」と入力すると、検索結果に
http://mediaarts-db.jp/an/anime_series/xxxxx";>link』
などと出力され、リンクが機能しなります。
これをリンクが機能する『link』として表示したいです。
0311Name_Not_Found垢版2018/06/19(火) 00:54:16.44ID:???
大きさが異なる画像のスライダーのスクリプトを探しています。

サムネイルをスワイプするとスライドする
0312Name_Not_Found垢版2018/06/19(火) 02:14:04.64ID:???
大きさが異なる画像の、高さを揃えれば?
0315Name_Not_Found垢版2018/11/11(日) 10:07:07.73ID:???
今から勉強するなら Vue.js でよろしいの?
0317Name_Not_Found垢版2018/11/13(火) 23:05:00.75ID:???
MathJaxについて質問です
サードパーティーによる拡張機能を追加する時は、どういう記法がいいんですか?
0318Name_Not_Found垢版2018/11/14(水) 12:41:58.97ID:???
>>317
そのサードパーティー拡張機能のドキュメントを読む
至極、当たり前のこと
0321Name_Not_Found垢版2019/06/20(木) 04:09:12.33ID:Rx7M+HGx
global に、lodash を入れたのだが、表示すると、既に2つのモジュールにも入っていた。
同じものだから、既に入っている方の、lodash を使えないの?

こういう感じで、使えないかな?
var _ = require( 'bookshelf/lodash' );

npm i -g lodash
npm ls -g lodash

C:\Users\Owner\AppData\Roaming\npm
+-- bookshelf@0.13.3
| `-- lodash@4.17.11
+-- knex@0.14.6
| `-- lodash@4.17.11
`-- lodash@4.17.11
0322321垢版2019/06/21(金) 23:10:31.75ID:???
<script type="text/javascript" src="file:///C:/Users/ユーザー名/AppData/Roaming/npm/node_modules/bookshelf/node_modules/lodash/lodash.min.js"></script>

<script>
console.log( _.VERSION );
</script>

これで、global に入れた、lodash ではなく、bookshelf/lodash の方を使えた

読み込まれるJavaScriptファイルは、
HTMLファイルの子孫フォルダ外でも、クロスドメイン(CORS)にならずに読み込める!

HTMLファイルに、動的に<script>タグを作って、
他のドメインから読み込む方法は、JSONP と言うのだっけ?
0324Name_Not_Found垢版2019/06/22(土) 01:15:08.65ID:???
あと、npmモジュールはJavaScriptファイルをビルドして
1ファイル(ないし少数のファイル)に結合して使うもんだろ。
直接scriptで読み込むなよ
0325Name_Not_Found垢版2019/06/22(土) 21:37:24.96ID:stYZhPIi
5chもJavaScriptも初心者のじじぃなのですが、教えていただけませんか?

https://developers.google.com/search/docs/guides/lazy-loading

↑このページの実装までは済んだのでテストをしたいのですけど
何をどうしたらいいのかさっぱりです。

Puppeteerでテストするとかいうのでググったら

https://qiita.com/kanoe/items/9043a81d28a1b733b2e2

このページの説明でなんとなく理解できたのですが、途中にある

-------------
Node.jsが動く環境が必要です。
$ npm i puppeteer
-------------

とか、手順がよく理解できていません。


エディターみたいなものが必要になるのでしょうか?

宜しくおねがいします。
0326Name_Not_Found垢版2019/06/23(日) 00:38:21.83ID:???
JavaScript実行環境のNode.jsをインストールしてからコマンドからパッケージマネージャーのnpmを使ってpuppeteerを導入しろってことだよ

その段階なら手動でブラウザ使って確認すればいいんちゃう
0327Name_Not_Found垢版2019/06/23(日) 09:30:52.65ID:???
まず、JavaScript 開発では、Node.js と、エディタのVSCode の2つを、インストールする。
Node.js をインストールすると、npm コマンドも使えるようになる

コマンドプロンプトで、where npm と打つと、こう表示される

C:\Program Files\nodejs\npm
C:\Program Files\nodejs\npm.cmd

C:\Program Files の下に、Node.js がインストールされる

インストールしていなかったら、何も表示されない

VSCodeについては、検索して、おすすめ拡張機能も入れる。
Bracket Pair Colorizer, Indent-Rainbow など

プログラム板に、スレもある
0328327垢版2019/06/23(日) 09:37:53.92ID:???
漏れは、ブラウザの自動操作・スクレイピングには、
Ruby で、selenium-webdriver, nokogiri を使ってる

Chrome で、ヘッドレスモードも出来る

まあ、Rubyでも、GUI は、HTML, SASS/CSS, JavaScript だから、
Node.js, jQuery, Lodash も必須!
0329Name_Not_Found垢版2019/06/23(日) 17:29:20.66ID:Zv0TKkDf
昨日のじじぃです。みなさんありがとうございます。感謝です。ちょっと試してみます。
0330Name_Not_Found垢版2019/07/16(火) 19:53:45.31ID:ZHmuKmI7
firefoxのポップアップのhtmlなんですが、これだとクリックしたときにアラートが出ません
何か特別な操作が必要なのだとしたら教えてください
情報が少なくてよくわからないです
なおこのhtmlのページを開いてクリックするとポップアップは表示サれます
https://ideone.com/dRKthv
0331Name_Not_Found垢版2019/07/17(水) 11:13:09.31ID:???
>>330
> firefoxのポップアップのhtml

ポップアップ先のURL含めてサンプルたのむ
window.open() 以外使ってるなら、それ含めて


私があほなだけかも知れないが
どんなライブラリ使ってるか読み取れず
その点も頼む
0332Name_Not_Found垢版2019/07/24(水) 01:16:14.67ID:???
はじめまして
このスレッドではwedpackについて質問してもよろしいのでしょうか?
0333Name_Not_Found垢版2019/07/24(水) 04:05:32.31ID:???
いいんじゃない
内容によってはプログラム板のNodejsスレが適してるかもしれんけど
0335Name_Not_Found垢版2019/08/06(火) 00:43:56.10ID:wwwvKb+V
Ruby on Rails 6 では、GitHub 中心で、
複数データベース(レプリカ)接続の大規模サービスなど、別次元へ行ってしまった!

モジュールバンドラーも、Webpack になりました!
0336Name_Not_Found垢版2020/11/04(水) 11:48:29.02ID:???
アカウントを教えずに、サンプルプログラムをお互いに示し合いが出来るサイトってどこだったっけ?

CodepenはURLにアカウント名が入るんだが
0339Name_Not_Found垢版2022/03/03(木) 20:44:31.40ID:FU1IYJw+
拠ない事情でフロントエンドを作ってるんだけど
<a><img></a>でaにaddEventListener(‘click’)したのに、飛んできたイベントのtargetプロパティがimgになってる
aを探して遡るのはなんか負けの気がする

aにイベント飛ばさせるテクはありますか?
0340Name_Not_Found垢版2022/03/03(木) 20:45:47.70ID:FU1IYJw+
↑スレ間違えたので無視してオクレ
0341Name_Not_Found垢版2022/03/10(木) 20:38:54.64ID:mzFKVDug
Threejs触り始めたけどimportとかmoduleとかよくわからなくて2時間かけてなにも表示できなくて笑った
0342Name_Not_Found垢版2022/03/10(木) 22:15:33.88ID:???
「js import module」で検索すれば?

開発環境も例えば、Ruby on Rails では、
VSCode, Node.js, Webpack/Babel, jQuery, Lo-dash なども使う

Node.js をインストールしたら、パッケージマネージャーのnpm も付いている。
パッケージマネージャーのyarn は、
npm でインストールするのではなくて、OS に直接インストールする

コマンドプロンプトで、

where node
C:\Program Files\nodejs\node.exe

where npm
C:\Program Files\nodejs\npm
C:\Program Files\nodejs\npm.cmd

where yarn
C:\Program Files (x86)\Yarn\bin\yarn
C:\Program Files (x86)\Yarn\bin\yarn.cmd
C:\Program Files (x86)\Yarn\bin\yarn.js
0343Name_Not_Found垢版2022/03/10(木) 22:59:17.85ID:mzFKVDug
図形描画したり普通に動かす分には他のプラグインと同じように読み込むだけで簡単にできるんだけど、テキスト表示とかしようとすると途端にダメになったわ
色々作法があるんだね

>>342
そういう方法をとらないと使えないんだったら仕方がないけど、最寄りのコンビニ行くのに自家用ジェット手配するような不条理感があるな…
もう少し勉強してみます
0344342垢版2022/03/11(金) 02:20:48.17ID:???
VSCode, Node.js などの開発環境が整っていないと、
入力補完・デバッグ・自動テストなどが無いから、
時間が掛かって、低品質になる

まず、プロジェクトの作り方・自動テストなどから始めないと、製品は作れない

例えば、Ruby on Rails プロジェクトのひな形なら、
https://github.com/abhaynikam/boring_generators

Tailwind, Bootstrap, jQuery,
AWS などのクラウド、
CI/CD のCircleCI, GitHub Actions,
Omniauth 認証で、Facebook, GitHub, Google, Twitter,
Stripe 決済とか、

プロジェクトを作る際の面倒くさい作業をしてくれる、
ひな形を作っている人もいる

ここで自分が使う機能を選んで、ひな形を作って、
それに沿ってコーディングをする
0345Name_Not_Found垢版2023/06/25(日) 01:14:36.87ID:???
ウム(メ▼▼)y-i_(・o・ ;)オヤブンドウゾ!!
0346Name_Not_Found垢版2023/07/29(土) 16:35:12.28ID:0UFjihmu
kindlefireの標準のweb閲覧ソフトだとjQuery使えないみたいですね
GoogleのライブラリみたいだからAmazonじゃ使えないのも当然ですが
0347Name_Not_Found垢版2023/07/30(日) 05:36:39.33ID:???
jQuery のCDN は、jQuery, Google, Microsoft の3つある
0350Name_Not_Found垢版2023/09/25(月) 20:03:50.90ID:???
現在、表の各セルをツールチップ表示しています。拡大鏡のようなイメージです。

表の各セルにテキスト、それと同じテキストをtitle属性に、…(a)
そのtitle属性をツールチップ表示しています。
ツールチップ表示はjQuery UIを使用しています。…(b)

$('table').find('td').tooltip(); …(b)
$('table').find('td:nth-of-type(i)).text(str).attr('title', str); …(a)

tooltip()はtitleをツールチップ表示する仕様です。
省略していますがnth-of-type(i)はループして各セルに代入しているとみてください。
各セルの内容は動的に変わります。よってonを使用しています。
CSSだけで「content: attr(title);」の方法もありますが機能性の理由でUIを使用しています。

この方法だとソースに同じ内容(テキスト)が2重になってしまいます。
data()を使うにも2重には変わりありません。

セル変更の都度titleに書き込まずにユーザーが読むときだけtitleに書き込んでもいいのですが根本解決にはなりません。

$('table').on('mouseover', 'td', function(){
$(this).attr('title', $(this).text());
});

属性に書き込まずにtext()で取得した内容をツールチップ表示する方法はないでしょうか?
できればUI使用、最悪CSSだけでもけっこうです。
よろしくお願いします。
レスを投稿する


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