[過去ログ] + JavaScript の質問用スレッド vol.122 + [無断転載禁止]©2ch.net (1002レス)
1-
抽出解除 レス栞

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
23
(4): (ワッチョイ 17c9-wh/5) 2016/09/01(木)18:09 ID:yAfRysov0(1/3) AAS
promiseのチェーンをn個動的につなげたいときはどうしたらいいの?
24
(9): (ワッチョイ 17c9-wh/5) 2016/09/01(木)18:17 ID:yAfRysov0(2/3) AAS
a().then(b).then(c).then(d);

これをこう書き
function run(a){
return a[0]().then(a[1]).then(a[2]).then(a[3]);
}

a[] を4個固定じゃなくてn個にしたい
28
(3): ◆SEdFBOkLSw (アウアウ Sacf-RETc) 2016/09/01(木)21:56 ID:x5Fi8ahca(2/3) AAS
>>24
var f=function (a){
var y=a.shift();
if(y) y().then(function(){f(a)})
}
で全部いけるんでないの?
41
(5): ◆SEdFBOkLSw (アウアウ Sacf-RETc) 2016/09/02(金)01:01 ID:nUqjDcPOa(2/2) AAS
>>40
あー、そういう事か。いや、間違ってない。面目ないな。

入れ替えると言うか、それごと変えるという事か。
それは再帰とどっちが良いのかは目的次第かもしれん。
俺は残り回数渡して再帰すると思うわ。setTimeoutで包んで。
48
(7): ◆SEdFBOkLSw (スププ Sd5f-RETc) 2016/09/02(金)08:40 ID:Nu/77N8Pd(1/8) AAS
>>47
生粋のネイティブなPromiseなら、非同期になることは保証されてるけど、
どんなPromiseっぽいものかわからん現状安全側に倒すよ。
次の処理始める、ではなくて、
今もし、今回の呼び出しでキュー溜まってるならそれ終わらしてからやりたいし、
コールスタックも深くなるじゃん。
52
(4): ◆SEdFBOkLSw (スププ Sd5f-RETc) 2016/09/02(金)11:56 ID:Nu/77N8Pd(2/8) AAS
>>49
thenの中の話だが。
promiseのそれっぽいポリフィルだと、即時に関数呼び出しするから、
promiseの中でsetTimeoutしてた場合、そいつらが走る前に、次のPromiseが走るよね。
そうじゃなくて、キューイングすることで、もし何かが実行されていてもその後に実行されるじゃん。

あと、コールバックが書けない、は一番ナンセンスじゃない?
配列の最後のPromiseが、「コールバックを呼び出す」ってPromiseであれば良い。

>>50
それぞれ取りたい感じ?
valueで全体は取れるけど、あとは正規表現でマッチした部分使えば良いんじゃないかな。
58
(3): (ワッチョイ 739d-Es5g) 2016/09/02(金)18:36 ID:YHEl/7lL0(1) AAS
そもそもpromiseってそんなに必要か?
117
(4): (ワッチョイ 4979-nUk7) 2016/09/12(月)16:04 ID:QAsPefCB0(2/2) AAS
すいませんこうでした
わかりづらいかもしれませんがよろしくお願い致します。

<head>
<script type="text/javascript">

function resetbutton(hiki){document.querySelector("div.hiki input").value=0;}

</script>
</head>
<body>

<div class="tamago">
<input type="number" value="0">
省3
118
(7): (ワッチョイ f19d-2kU/) 2016/09/12(月)16:26 ID:1arG/Lwr0(1/2) AAS
function resetbutton(hiki){
/* hikiは変数 */
document.querySelector("div." + hiki + " input").value=0;
}
/* tamaleはString(文字列) */
<input type="button" value="リセット" onClick="resetbutton('tamale')">
121
(4): (オッペケ Sr3d-j70e) 2016/09/12(月)21:55 ID:6fvstpPur(1/2) AAS
>>118でいいと思うが、resetbutton('a .hoge>.piyo') みたいに書けるのが問題だな
厳密にはエスケープ処理が必要
123
(3): (ワッチョイ 69ce-tq+X) 2016/09/12(月)23:08 ID:ipGCKz/x0(1/4) AAS
なんか低レベルな争いしてるなぁw

そんなことまず指摘するべき所あるだろ。
リセットするならvalue=0はやめろ。

俺が軽く見本みしてやるわ。
外部リンク:jsfiddle.net

textだけじゃなくcheckboxやselectにも対応したやつな。
つってもtextareaやnumberとかには対応してない手抜きコードだけどな。
187
(3): 160@JavaScript ◆EpG1YCxoik (アウアウ Sa9f-UmMt) 2016/09/15(木)07:23 ID:FbcVefQGa(2/2) AAS
>>183
正直、◆SEdFBOkLSw の説明力にも問題があると思うが、話がずれてる
彼がいってるのは「A社が作成した低品質Promise非互換ライブラリコードの保守/改修を自社で引き受けた時にどうするか」で対策は大きく3通りある

1. 低品質Promise非互換ライブラリコードに対応したコードを書く
2. 低品質Promise非互換ライブラリコードを捨ててPromiseで書き直す
3. 低品質Promise非互換ライブラリコードを捨てて自社ライブラリで書き直す

◆SEdFBOkLSw は 1. を選択し、「setTimeoutでほげほげ」して対策した
だが、「setTimeouでほげほげ」が彼以外の人にはさっぱりわからない
そんな状況

1. を選択するなら低品質Promise非互換ライブラリのドキュメントを読んで該当ライブラリ独自の書き方で書くのが最良だと思うが、
省1
193
(3): ◆SEdFBOkLSw (スフッ Sdbf-wJFc) 2016/09/15(木)12:18 ID:QfaZZNRDd(1) AAS
>>190
スマホだよ。
家引っ越した時にネット回線契約すんのめんどくさくて、wimax置いてそのまま。
PCで2chはしないなぁ。
まぁ、空論と言われても。
休みの日にでも書いてみるわ。

自社で書くコードは、自社開発分じゃん。
もしくは講師と講座かなんかの形でウヤムヤにできるグループ会社かそのへん。
保守改修じゃないよ。コンポーネントで発注してるものを組み込んだ側の開発。

>>192
省1
228
(3): (ササクッテロ Sp1f-eXu6) 2016/09/18(日)14:16 ID:0+yFEvXAp(1) AAS
Promiseのことを聞かれたのに標準的でないごく限られたダメ環境でしか使わないバットノウハウをさも正しい事の様に言ってた無能がいたってだけだろ

その無能が延々と自己正当化と言い訳を繰り返してるのは痛々しい
無能が無能を晒してるのは面白いが質問スレとしては迷惑でしかないからいい加減黙れよと
350
(3): (ワッチョイ 3f0f-AIfR) 2016/10/25(火)01:39 ID:UGDfYeLy0(1) AAS
リンクをクリックすると非同期で情報をappendするのですが、
リンクにタブのカーソルがあるとき、エンターを押しっぱなしにすると連続でリクエストを送ってしまいます。
サーバに負担がかかるので、それをやめたいのですが、どういった実装が必要でしょうか?
361
(3): (スプッッ Sdc8-YT5Q) 2016/10/26(水)22:35 ID:+ptKBLbQd(1/2) AAS
>>360
すみません、要素のクラスを変えたいのではなく、
クラスのstyleを変えたいのです
423
(3): (ワッチョイ 74c9-XpIe) 2016/11/22(火)10:12 ID:/Z/CfoTY0(1/2) AAS
javascriptで連想配列って使えない?
460
(3): (ワッチョイ 39ce-NTgB) 2016/12/04(日)22:58 ID:ObsZQ3a00(3/3) AAS
>>459
SyntaxError: missing = in const declaration

こうなるからつかわねーんだよw
480
(4): (ワッチョイ 53c3-drn7) 2016/12/11(日)07:46 ID:iSoJ1ckE0(1/2) AAS
Windows7です
jsc.exeでJavascriptをコンパイルしてexeファイルを作りたいと思っています
いろいろ調べてWScriptを使うためにはActiveXObjectすればいいというのを見つけたのですが

var WScript = new ActiveXObject("WScript.Shell");
WScript.Run("notepad.exe", 1, 1);
はちゃんと動いたのですが、

var WScript = new ActiveXObject("WScript.Shell");
WScript.Echo("abc");
とするとハングアップしてしまって動きません
解決方法はありますか
484
(3): (ワッチョイ 3736-maiv) 2016/12/11(日)22:45 ID:kg/mlddD0(1) AAS
AA省
1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.050s