[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 04/24 16:40 / Filesize : 290 KB / Number-of Response : 1020
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

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



1 名前:デフォルトの名無しさん [2015/04/22(水) 01:35:08.20 ID:TQI/XWNo.net]
JavaScript を自ら学ぶ人のための質問スレッドです。
>>2-5のテンプレを読んだ上で質問してください。

■質問を書く上で
(1) 煽り、コード制作依頼等、人を不快にさせる投稿はご遠慮下さい。公序良俗を守った応対を心がけてください。
(2) 他の人に迷惑をかけるスクリプトの質問はご遠慮ください。
  (ブラクラ、[戻る], [閉じる], [クリック] の妨害、画面占有など)
(3) 質問者及び議論を行う人はメール欄を空欄にし、名前にレス番を入れることを強く推奨します。回答者はなりすましを判断できませんので、なりすましが現れても自己責任となります。
(4) 常に自発的に調べる心構えを持ってください。
  具体的には「自分で調べてから質問する」「回答をもらってわからない単語があればGoogle検索してみる」など。
  わからない内容を代わりに調べてくれる回答者をお望みの方は余所で質問してください。
(5) 出来るだけ一般的な用語を使用してください。脳内オレオレ用語は混乱の元です。
(6) 出来るだけサンプルコードを掲示してください。言葉による説明は行き違いが生まれる場合があります。
  ※必ず「問題の事象が再現されること」を確認してください。
   必要な部分だけ切り出したつもりで現象が再現できていなかったケアレスミスがしばしば見られます。
(7) サンプルコードに HTML が含まれる場合は validator.w3.org/ で [Check] してみてください。
(8) 質問を具体的かつ詳細に書くと回答を得られやすいです。>>2の質問テンプレートを活用してみてください。
(9) ライブラリ関連の質問は禁止です。関連スレにあるライブラリ質問スレで質問して下さい。
(10) 時にはあなたが望む「答え」だけでなく、「意見」などが寄せられる場合もあります。

496 名前:デフォルトの名無しさん mailto:sage [2015/12/23(水) 19:51:12.02 ID:fUoT5vqI.net]
他言語の sleep はそこでスレッドをスイッチするから他処理をブロックしない。
お前らこの単純な事実を知らないのか?

497 名前:デフォルトの名無しさん mailto:sage [2015/12/23(水) 20:00:54.54 ID:tFvVWMos.net]
(笑)

498 名前:デフォルトの名無しさん mailto:sage [2015/12/23(水) 20:04:35.74 ID:qlqX4ccz.net]
>>489
同期処理なんだから後述処理は完全にブロックされるだろ
HTMLパースも同期処理なのを知らんのか

499 名前:デフォルトの名無しさん mailto:sage [2015/12/23(水) 20:26:19.51 ID:MksdZDM7.net]
JavaScriptはシングルスレッドで同期処理だから sleep() 時に処理がブロックされる必然
他言語ではなくてJavaScriptでどうなるかを考えたら?

500 名前:デフォルトの名無しさん mailto:sage [2015/12/23(水) 21:14:21.37 ID:fUoT5vqI.net]
お前ら相変わらず話が通じないな。

>>491
> HTMLパースも同期処理なのを知らんのか
知ってるよ。だからHTML上に<script src=>やると云々、書く場所は考えろってやつだろ。
ただ WebWorker を使った場合は sleep(0) があった方が綺麗に書けるんだよ。
(とはいえsleep(0)ならasync/awaitで問題ないが)

>>492
JavaScript はデタラメに仕様を拡張してきているのに、
なんで sleep を採用しないのか不思議だと言ってるんだよ。

501 名前:デフォルトの名無しさん mailto:sage [2015/12/23(水) 23:12:11.47 ID:v4yXy6ML.net]
> なんで sleep を採用しないのか不思議だと言ってるんだよ。
ブラクラに使われるからだよ。

sleep 100000000とかやられたら画面が固まるだろ。
そりゃブラウザによっては固まらないようにするかもしれないが、
それはそのブラウザの独自機能。タブも独自起動。

タブもウインドウもないブラウザだって有るわけで、
画面が固まったら何もできなくなるだろ。

502 名前:デフォルトの名無しさん mailto:sage [2015/12/23(水) 23:18:01.50 ID:fUoT5vqI.net]
ちょっと考えてみたが、 async/await と Promise で実装できそうな気がする。
await は Promise を受け取れるし、 ---(A)
Promise 内で SetTimeout できるようなので。 --- (B)

(B)についてはMDNのサンプルコードで確定。
(A)については仕様の頭を読んで他サイトの記述を見る限り多分出来そう。
(ただし全部読んでないので間違っているかも。)
https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Promise
tc39.github.io/ecmascript-asyncawait/

それにしても、 sleep を意地でも実装しない理由って無いと思うよ。
async/await 入れた時点で function 途中でのスイッチが行われるのだから、
sleep と可読性の損なわれ方は変わらないはず。


と思っていたが
>>494
> ブラクラに使われるからだよ。
なるほどこれはあるかもな。

しかしそれを言うなら、あっちのスレの話題で今更ながらFC2ブログがJS自由なのを知って、
ちょっと寒気がしてます。

503 名前:デフォルトの名無しさん mailto:sage [2015/12/23(水) 23:29:03.26 ID:fUoT5vqI.net]
>>494
すまん訂正。思いっきり間違えた。

> > ブラクラに使われるからだよ。
> なるほどこれはあるかもな。
スピンロックの sleep ならブラクラになるが、通常のサスペンドロックの sleep ならブラクラにはならない。
俺が入れてもいいのではないかと思っているのは当然後者。
だからこれは当てはまらない。

504 名前:デフォルトの名無しさん mailto:sage [2015/12/24(木) 00:32:33.07 ID:vhy24jAm.net]
>>496
だからそれはJavaScriptの仕様で決めることは出来ないんだよ。
搭載したいと思うなら、ブラウザが勝手に搭載すればいいわけで、
実際サーバーサイドJavaScriptでは、sleepはブラウザに相等する
実行環境が提供している。



505 名前:デフォルトの名無しさん mailto:sage [2015/12/24(木) 00:54:43.31 ID:eesjQKa2.net]
sleep() があったら sleep(Infinity); で永遠に読み込みが終わらない現象を発生可能な件

506 名前:デフォルトの名無しさん mailto:sage [2015/12/24(木) 01:10:40.88 ID:vhy24jAm.net]
>>496
> スピンロックの sleep ならブラクラになるが、通常のサスペンドロックの sleep ならブラクラにはならない。

あと、スピンロックかどうかは関係ない。
それはJavaScriptはWeb Workerを作って明示的に別スレッドを作らないかぎり
(悪意のあるブラクラサイトがわざわざ別スレッドを作るわけがない)
シングルスレッドなのだから、スピンロックでもサスペンドロックでもブラクラになる。
スピンロックだとCPUを食うというだけの話。

507 名前:デフォルトの名無しさん mailto:sage [2015/12/24(木) 01:33:21.10 ID:ij3qlZ6A.net]
ブラクラになるとか頭おかしいのか・・
フリーズしなくすれば良いだけ

508 名前:デフォルトの名無しさん mailto:sage [2015/12/24(木) 01:48:04.37 ID:vhy24jAm.net]
>>500
だからフリーズしなくなる機能をつけるのは
ブラウザの仕事であって、JavaScriptではないということ。

例えばalertなんかOK押すまでsleepするのと同じなんだが、
今のブラウザはalertでても、ページ内の操作は当然無理だが、ウインドウは触れるだろ。

でもalertはブラクラに使われていたんだよな。後からブラウザが対策した。
もちろんalert等はブラウザの機能であってJavaScriptの機能ではない。
alertのようなブロックする関数は今の考え方では失敗と言うべきだろう。

509 名前:デフォルトの名無しさん mailto:sage [2015/12/24(木) 02:09:31.15 ID:3SycHtsF.net]
>>501
何があってもブロックさせないという仕様は、確かにブラウザには必要なのだろう。
ただ、sleep を await と同じ扱いにすればいいだけだろ。
I/Oとかは全面的に await でいいのは事実だけど、
sleepの方が使いやすい局面があるから昔から sleepガー という奴がいるわけで。

> だからそれはJavaScriptの仕様で決めることは出来ないんだよ。
> それはJavaScriptはWeb Workerを作って明示的に別スレッドを作らないかぎり
> シングルスレッドなのだから、
これが出来ない理由にはならないんだよ。だったら await はどうなの?
await の所で他の function が実行できるんだよね?(仕様読んでないけど)
それは別スレッドを作っているのと見た目は同じだろ。
内部的に糖衣構文化してイベント待ちに自動的に切り換えてくれているのなら、
sleep も同様にそう作り込めばいいだけなんだよ。
await を導入している時点で、sleep が導入できない理由はないんだよ。
sleep は await のタイマイベント待ち版でしかないんだから。
(通常の await は I/O 待ち)

510 名前:デフォルトの名無しさん mailto:sage [2015/12/24(木) 04:48:17.07 ID:vhy24jAm.net]
smart.ataglance.jp/2015-04-02-try-async-await-with-babel/
awaitってこれだろ? ES7ではいるやつ。

> async function countUp() {

これを実装するには、asyncという構文にJavaScriptが対応しないと実現できないんだが?

お前が言ってるのは、今のJavaScriptでは実現不可能。なぜなら対応してない機能が必要だから。
という事実に対して、最初からJavaScritpはasyncという文法に対応していれば
よかったんだってってことだろ? たられば論な。

別の言い方をすれば、
問い なぜsleepに対応してないのか?
答え asyncに対応してないから。
ってことなんだが?

将来サポートされる機能で実現可能だと言われた所で、
今サポートしてない理由は、今のJavaScriptでは実現不可能だからだろ。

どんなにsleepを作りこんだ所で、asyncは実現できない。
それともお前が言ってる "作り込み" っていうのはBabelみたいにES7をES5とかに変換するツールを
JavaScriptで作って、実行時にソースコードを変換するようするって話か?

511 名前:デフォルトの名無しさん mailto:sage [2015/12/24(木) 05:00:33.39 ID:vhy24jAm.net]
あとそれからももう一回っておくけど、
asyncやwaitがあった所で、JavaScriptにはタイマーがないんだよ。
JavaScriptにファイルアクセス命令がないようにタイマー命令もない。

それはJavaScriptにタイマーは含めないと決めたから。

awaitやasyncがあった所で、タイマーが存在しなければ、
ビジーウェイトしないかぎり、実現不可能。

それがawaitやasyncを入れても、タイマーを入れない理由。
そういうのはJavaScriptではなく実行環境が提供すべき機能で
JavaScriptには入れるべきではないという考えから入れていない。

512 名前:デフォルトの名無しさん mailto:sage [2015/12/24(木) 05:09:19.58 ID:5dQYZNYi.net]
ただの構文糖ならJavaScriptという言語に追加できるけど、
sleepを実現するのに必要なタイマーは構文糖じゃないからな。

JavaScriptに新しい機能を追加しようという話になってる。
タイマーを一般化すると割り込みとかシグナルになるわけだけど
JavaScriptに割り込みやシグナルにアクセスする機能を追加するって話になる。

タイマーは構文糖じゃないから取り入れられないんだ

513 名前:よ。 []
[ここ壊れてます]

514 名前:デフォルトの名無しさん mailto:sage [2015/12/24(木) 05:31:32.68 ID:5dQYZNYi.net]
>>502
> (通常の await は I/O 待ち)

await はI/O待ちではない。
I/O待ちするのはブラウザを含めた実行環境の仕事

JavaScriptは、基本的にI/Oを操作しない。
(近いのはconsole.logぐらいだがこれもコンソールに
出すってだけで出す場所は定義されてない)



515 名前:デフォルトの名無しさん mailto:sage [2015/12/24(木) 07:16:17.38 ID:YlRH46yJ.net]
安易に使うやつでてくるから駄目でしょ
sleep中にHTMLや変数かわるとかさ考えてないやつでてくるだろう
考えなくていいのがいいところだし

するとしたら既存のjavascriptには影響なしで理解してないやつには使いにくい機能追加だな

516 名前:デフォルトの名無しさん mailto:sage [2015/12/24(木) 07:34:18.13 ID:Y5sNONvq.net]
この前別スレでこの手の話出てたけど、
ES7でスレッド制御できるようになるからsleep出来るじゃん。
参考:js-next.hatenablog.com/entry/2015/09/30/225251
それと非標準では昔からいろいろある。

517 名前:デフォルトの名無しさん mailto:sage [2015/12/24(木) 07:54:24.80 ID:xUUCJBux.net]
UIスレッドとスレッドセーフの区別がついてないのまで出てきてカオス

518 名前:デフォルトの名無しさん mailto:sage [2015/12/24(木) 09:05:14.13 ID:kShQ38jb.net]
俺が、俺たちがカオスなんだ!

519 名前:デフォルトの名無しさん mailto:sage [2015/12/24(木) 12:37:48.96 ID:lTmsChXg.net]
>>508
将来搭載される機能使えば、実現可能だからって、なんで今sleepないの?と
聞かれてもな。今は実現不可能だからに決まってるだろ。

そもそもWorkerはブラウザのAPIであってES7じゃない。
ESにasync/awaitという構文が追加されたのはただの構文糖だからで実現可能だったからで、
構文糖で実現不可能なタイマーへのアクセスは、将来にわたってもできることはないだろう。
ファイルアクセスなどのI/Oに対応しないのと同じ理由で、
ESの範囲ではタイマーを扱うべきではないと考えているはず。

ブラウザの機能の話であれば、それはsetTimeoutがあるから十分じゃん?
setTimeoutがasyncを使った実装になってないのは、今のJavaScriptは対応してないからだ。
しかも、それはブラウザのAPIの話。async構文を使ったsleepを実装しろ!というならば
ブラウザのAPIに対してだろう。サーバーAPIはすでにあるわけだから。

520 名前:長くなったから分割 mailto:sage [2015/12/24(木) 12:39:45.82 ID:lTmsChXg.net]
もっとも、どう頑張ってもsleep(1000)みたいな形で使えるようになることはない。
>>503の例のように、await sleep(1000); というawait構文を使った形になる。

そしてasync、awaitはただのPromiseの構文糖なのだから、Promiseを返す
関数であれば、ES7でasync、awaitを使って書くことができる。

だから、Promiseを返すバージョンのsetTimeoutとして、
sleep(1000).then(function() { ・・・ }) みたいな使い方をする
ブラウザのAPIが新しく作られることは有るかもしれない。
そして、これならば今のブラウザでも動く。

521 名前:デフォルトの名無しさん mailto:sage [2015/12/24(木) 12:46:55.90 ID:lTmsChXg.net]
>>495
> ちょっと考えてみたが、 async/await と Promise で実装できそうな気がする。

Promiseというものが最初にできて、それを "簡単に記述できるようにしただけ" のものが
ES7に追加されることになった新たな文法のasync/awaitなんだが。
これは新しい文法なんだから、Promiseで "実装" することは出来ない。

Promiseを返すように作られた関数があって、
それを使う時の書き方の一つでしかないよ。

522 名前:デフォルトの名無しさん mailto:sage [2015/12/24(木) 12:56:26.66 ID:YlRH46yJ.net]
javascriptみたいな使いにくい言語に難しいことすんなや

523 名前:デフォルトの名無しさん mailto:sage [2015/12/24(木) 13:30:58.58 ID:lTmsChXg.net]
難しいかどうかは人それぞれだからw

524 名前:デフォルトの名無しさん mailto:sage [2015/12/24(木) 14:21:38.37 ID:+OAEjoT0.net]
promiseってjavascriptで書かれているんだろ?
だったら今でもsleep出来るんじゃないか?



525 名前:デフォルトの名無しさん mailto:sage [2015/12/24(木) 16:22:07.01 ID:lTmsChXg.net]
>>516
PromiseはJavaScriptでかけるが、
sleepを実装するのに必要なタイマー機能(割り込みやシグナル)が
JavaScriptでは使えないんだよ。

これらはブラウザかnodeのようなJavaScript実行環境が
提供するしか無い。

526 名前:デフォルトの名無しさん [2015/12/24(木) 16:50:27.79 ID:QHPA1t+Q.net]
Javascriptの開発環境はなにがいいのですか?
この言語はまだ初心者で経験ないけどこれからやるために。
サクサク動くの希望。

調べたらVisual StudioでもEclipsでもできるらしいけど、本当にみんなこんなのでやってるの?

527 名前:デフォルトの名無しさん mailto:sage [2015/12/24(木) 16:57:32.84 ID:lTmsChXg.net]
>>518
JavaScript含めた動的言語は、言語の仕様からIDEを使っても
さほど大きな開発サポートは得られないので、諦めてテキストエディタ使ってるよ。
静的言語ならIDE使うとすごく便利なのにな。

528 名前:デフォルトの名無しさん [2015/12/24(木) 17:00:13.00 ID:QHPA1t+Q.net]
>>519
ひょっとしてメモ帳?
でもちょっと本格的になったら無理じゃない?
コード入力で単語を自動選択ポップアップすらないと。

529 名前:デフォルトの名無しさん mailto:sage [2015/12/24(木) 17:01:10.52 ID:lTmsChXg.net]
>>520
メモ帳なわけがないだろう。
まあ単語の自動選択は使ってないがな。
これも完璧じゃないので。

530 名前:デフォルトの名無しさん [2015/12/24(木) 17:10:04.57 ID:QHPA1t+Q.net]
>>521
じゃなにつかってるの?

531 名前:デフォルトの名無しさん mailto:sage [2015/12/24(木) 17:57:12.05 ID:k1/8SWkC.net]
>>511
ES7と言ったのはAtomicsのことだよ。
そしてsleepは不要で合わなくてそのような機能は実装されることがないというような論に対して言ったんだよ。
AtomicsAPIは立派なスレッド制御のための新しい機能で、糖衣構文の類ではない。
ESの範囲で扱うべきだと考えられているから存在している。

532 名前:デフォルトの名無しさん mailto:sage [2015/12/24(木) 18:06:22.44 ID:lTmsChXg.net]
>>528
何の話してるの?

俺が言ってるのは、タイマーはES7の機能として実装されないから
sleepはES7の範囲内では無理って話してるんだが。

スレッドあってもsleepはビジーウェイト以外では
実現できないんだよ。

533 名前:デフォルトの名無しさん mailto:sage [2015/12/24(木) 18:09:16.10 ID:lTmsChXg.net]
なんか前の方ではスピンロックとか意味不明な用語の使い方してるし、
名前だけ知ってて、基礎ができてないんじゃないか?

534 名前:デフォルトの名無しさん mailto:sage [2015/12/24(木) 21:52:25.60 ID:bR1u9BVC.net]
setTimeoutとyieldでsleepは簡単に実現できるけど、setTimeoutはjsには含まれてないもんな
どうでもいいがWScriptにはそのまんまsleepがあるな



535 名前:デフォルトの名無しさん mailto:sage [2015/12/24(木) 23:10:08.57 ID:RAVtKX98.net]
>>522
Atom.ioのエディタとChromeの開発者ツールかな
一応、打ち込んだ変数名の推測表示はしてくれる

536 名前:デフォルトの名無しさん [2015/12/24(木) 23:16:17.63 ID:QHPA1t+Q.net]
>>527
なるほどありがとう
もしChromeの使うならとくになにもインストールしなくてもついてるやつですか?

537 名前:デフォルトの名無しさん mailto:sage [2015/12/24(木) 23:31:57.10 ID:RAVtKX98.net]
>>528
Chromeに最初から付いてる、メニューから使えるやつ
開発中は.min.jsじゃなくて.jsを使うんだぞ
ブレークしてウォッチすればライブラリにどんなメソッド有るかとか見えるし、中まで追っていける

538 名前:デフォルトの名無しさん mailto:sage [2015/12/25(金) 09:17:26.40 ID:tK87TiQA.net]
>>526
sleepはスレッドの停止であって、
コルーチンの留保とはぜんぜん違う

539 名前:デフォルトの名無しさん mailto:sage [2015/12/25(金) 10:00:37.15 ID:/jFYFGFJ.net]
>>480
香ばしワロタ

540 名前:デフォルトの名無しさん mailto:sage [2015/12/25(金) 10:12:54.99 ID:tK87TiQA.net]
まあsleepをビジーウェイト程度に考えてちゃ有用性は分からないだろうな。
ビジーウェイトじゃないし本来wakeとセットで有用なものでもあるからね。

541 名前:デフォルトの名無しさん mailto:sage [2015/12/25(金) 17:56:50.40 ID:MWeRnh5+.net]
ほーい現行スレ

peace.2ch.net/test/read.cgi/hp/1448293871/l50

542 名前:デフォルトの名無しさん mailto:sage [2015/12/25(金) 20:46:43.80 ID:mCWQHNVj.net]
そもそもUIスレッドでsleepできて何が嬉しいの?

543 名前:デフォルトの名無しさん [2015/12/25(金) 22:39:08.53 ID:XoBMqT50.net]
>>529
なるほどありがとう。
ところでChromeでコードを書く場所はどこにあるの?
F12押したときに出てくる画面の上部のタブのElementsやSourcesをクリックしてコードを見

544 名前:ても
これは見るだけはできても編集して書き込むことができない。
[]
[ここ壊れてます]



545 名前:デフォルトの名無しさん mailto:sage [2015/12/25(金) 23:46:42.58 ID:OVXWXNxb.net]
>>535
AtomやVisualStudio CodeなどエディタでHTML/CSS/JavaScript/PHP/Curlのテスト用コマンド などを書いて、
クライアントはChromeとかIEとかスマホとかいろいろ試すわけですよ
ttp://tech.nitoyon.com/ja/blog/2015/11/20/try-vscode/

書いて置いておくのはWebサーバのある場所
読み込んで動くのはクライアントに居るChromeやIE
だから、Chromeでは見られるけど編集できないのが自然なわけ

VisualStudioならWindowsフォーム書いてその場で動かせるのに、wwwってめんどくさいですね?
そしたら ttp://Electron.atom.io てのを調べてみよう

546 名前:デフォルトの名無しさん mailto:sage [2015/12/26(土) 04:58:55.05 ID:56T1awou.net]
>>534
サブスレッドとの同期等

547 名前:デフォルトの名無しさん mailto:sage [2015/12/26(土) 05:02:09.76 ID:h8/CI80S.net]
>>537
それは答えじゃない。

何が嬉しいの?っていうのはユーザーにとっての話だ。
嬉しいこと(答え)ではなく、何ができるのかしか言っていない。
サブスレッドと同期ができて人は何が嬉しいのか?
それが求められている答えだ。

548 名前:デフォルトの名無しさん mailto:sage [2015/12/26(土) 16:51:32.69 ID:Dx/LxDfY.net]
簡単に同期ができるとマルチスレッドプログラミングが格段にやりやすくなる。
例えばメインスレッドでは同期処理と同じような感覚でマルチスレッドを使う関数を使える。
それだけならawaitでもいいじゃんと思うかもしれないが、
sleep/wakeはマルチスレッドプログラミングに付き物の競合問題も解決してくれる。

まあでもWebに関しては、現状の状態を鑑みるに、別にサブスレッドを束ねるマスタースレッドを作って、
UIスレッドでは下手にsleepしたりしないほうが良いと思う。
DOMとJSとのイベントループが絡まっているため、現状の仕様というか素直な実装による挙動だと、
JSでsleepするとUIも固まってしまう。
だから今のところの現実解は別個にマスターワーカーを作り、UI側とのやり取りはasync/await
ワーカー同士はsleep/wakeでするのがベストだと思われるがどうか。

549 名前:デフォルトの名無しさん mailto:sage [2015/12/26(土) 17:02:03.43 ID:h8/CI80S.net]
話ずれ過ぎw

今はwakeの話はしていない。たんなるsleep(秒数)だ。

これはJavaScriptの範疇じゃないってだけ。
ブラウザを含めた実行環境が提供すればいいだけの話。
実際にサーバーサイドJavaScriptは実行環境が提供している。

550 名前:デフォルトの名無しさん mailto:sage [2015/12/26(土) 19:01:28.66 ID:AaVX3RoX.net]
書き方以外のメリットはないみたいね

551 名前:デフォルトの名無しさん mailto:sage [2015/12/26(土) 20:25:26.24 ID:EPUewKIt.net]
>>535
そこに実ファイルドロップして、右クリで追加したら触れるようになるはず。

552 名前:デフォルトの名無しさん mailto:sage [2015/12/26(土) 21:10:28.86 ID:Sgv0r5+y.net]
関数の引数で、
function func1(int) {
 ...
}
func1(10);
みたいなシンプルなデータを渡す場合と、
function func2(win) {
 ...
}
func2(window);
みたいに、大きなオブジェクトを渡す場合とで、処理速度に差が出ますか?

553 名前:デフォルトの名無しさん mailto:sage [2015/12/26(土) 21:56:15.94 ID:lqDTULGo.net]
大きなオブジェクトへの参照を渡しているだけだから
想像しているような差はないと思っていいよ

554 名前:デフォルトの名無しさん mailto:sage [2015/12/27(日) 01:18:53.59 ID:LwSAm1fH.net]
SMIは他のあらゆる値と違って直接レジスタに畳み込めるから有利。
ただし64bit環境と最新のエンジンではその限りではない。



555 名前:デフォルトの名無しさん mailto:sage [2015/12/27(日) 04:25:15.40 ID:t0JLu8LK.net]
AngularJSでハマったわ…
angular.module('App01',[依存モジュール]);
angular.module('App01',[別の依存モジュール]);
2回目ので最初のを上書きしてしまうのだった
ただ単に最初のコントローラが消えてしまうのでエラーも何も出ないし

556 名前:デフォルトの名無しさん mailto:sage [2015/12/27(日) 04:53:58.23 ID:Y7IK7QLW.net]
そういうのを検出してくれるのがあった気がするけど忘れたな。
気のせいかもしれない。

557 名前:デフォルトの名無しさん mailto:sage [2015/12/27(日) 05:18:31.87 ID:zCo3FkO+.net]
app.js として一行だけ
angular.module('myApp',[サブ1,サブ2…]);
ルーティングやコントローラで
angular.module('サブ2',[依存モジュール])
とすることにしました。
追加のたびにapp.js書き換えになるけど単体テストがやりやすそうだし

558 名前:デフォルトの名無しさん mailto:sage [2015/12/28(月) 12:18:40.57 ID:MpvL/SZu.net]
phantomJSはウェブブラウザと同じことが出来ると使ってみたら表示されないページが在ったり、ハングアップしたりして全然使い物になりませんね。

559 名前:デフォルトの名無しさん [2015/12/28(月) 19:56:19.32 ID:aQp7bRaK.net]
会社のPCの権限を制限されてツール等をインストールできないとき
Javascriptはどうやって書いてますか?

560 名前:デフォルトの名無しさん mailto:sage [2015/12/28(月) 21:46:31.78 ID:VijL79y/.net]
>>550
そんな会社をやめる

561 名前:デフォルトの名無しさん mailto:sage [2015/12/28(月) 21:53:35.78 ID:rsmzLifY.net]
>>550
JavaScript に権限など必要ない

562 名前:デフォルトの名無しさん [2015/12/28(月) 22:29:37.56 ID:aQp7bRaK.net]
>>551
まあ転職予定だ

>>552
いや開発環境としてのエディタがインストールできないという意味だ。
もしかしてみんなこんなときメモ帳で書いてるの?

563 名前:デフォルトの名無しさん mailto:sage [2015/12/28(月) 22:34:48.53 ID:qCU45Dy7.net]
>>553
Webアプリ使おう

564 名前:デフォルトの名無しさん mailto:sage [2015/12/28(月) 22:40:34.12 ID:rsmzLifY.net]
>>553
仕事で必要なら権限がある人に申請を出すだけでいいのでは?



565 名前:デフォルトの名無しさん mailto:sage [2015/12/28(月) 22:52:13.74 ID:mtPLZTEK.net]
インストール不要の物使え

566 名前:デフォルトの名無しさん [2015/12/28(月) 23:03:07.01 ID:aQp7bRaK.net]
>>554
それはどのようなものですか?

>>555
仕事て使うほど大げさではなく
ふだんやることのほんの一部を自動化するだけなので
なぜチームでオレだけが必要か説明できないよ。

>>556
それはzipをダウンロードすることだと思うけど
勝手なダウンロードも監視&禁止されてるのよ。
いっかいそれで警告を受けたからもうできない。

567 名前:デフォルトの名無しさん mailto:sage [2015/12/28(月) 23:27:51.67 ID:VijL79y/.net]
やめる前に、業務に"必須"なものまでインストールが制限されており、
"作業効率が著しく低く"、こんな環境ではまともな仕事ができないから
って言ってあげてねw

568 名前:デフォルトの名無しさん mailto:sage [2015/12/28(月) 23:29:15.43 ID:VijL79y/.net]
ダウンロードは誰が禁止しているのですか?
なるほど、つまり○○さんが、
他人の仕事の邪魔をしているわけですね。
って言ってあげてねw

569 名前:デフォルトの名無しさん [2015/12/28(月) 23:30:21.82 ID:aQp7bRaK.net]
でかい会社だからITのネットワークチームかどこかが監視してるのよ。

570 名前:デフォルトの名無しさん mailto:sage [2015/12/28(月) 23:34:13.51 ID:VijL79y/.net]
VirtualBox + Linux さえ許可されれば、
あとは自由にアプリインストールし放題だけどなw

パッケージマネージャーで入れるものはすべて
Linuxに含まれているものだからねw

571 名前:デフォルトの名無しさん mailto:sage [2015/12/29(火) 02:10:16.17 ID:q3r6ryfw.net]
>>557
Webのエディタだよ
JavaScript エディタ Webでぐぐったら色々出てくると思うよ

572 名前:デフォルトの名無しさん [2015/12/29(火) 10:23:17.64 ID:u34Ypxab.net]
>>562
それはわりと標準的な開発手法でしょうか?

573 名前:デフォルトの名無しさん mailto:sage [2015/12/29(火) 10:25:49.11 ID:+waEXqzn.net]
Cloud9 IDEとかね
Nitrousとか色々あるのな最近

574 名前:デフォルトの名無しさん [2015/12/29(火) 11:13:02.88 ID:NA8hl+pp.net]
>>563
標準的になりつつある



575 名前:デフォルトの名無しさん mailto:sage [2015/12/29(火) 11:40:30.88 ID:p61NlkkE.net]
もう、ローカルにXAMP環境作るとか時代遅れなのね

576 名前:デフォルトの名無しさん mailto:sage [2015/12/29(火) 12:29:10.19 ID:0EeRezxI.net]
>>557
zipのダウンロードが許可されないのにWebアプリやクラウドを使う事は許可されるの?
もう少し、環境(OS、インストールされているアプリ)や「許可されるボーダーライン」を開示しないと誰も答えられないと思う。

577 名前:デフォルトの名無しさん mailto:sage [2015/12/29(火) 13:54:31.05 ID:S7hPg+te.net]
>>566
実機はどうせライセンスの関係からLinuxにならざるをえないんだから、
ローカルにはLinuxを仮想マシンで入れたほうがいいと思う。

578 名前:デフォルトの名無しさん mailto:sage [2015/12/29(火) 14:46:39.92 ID:5o0CYWec.net]
会社で使うものを、自分で決めたらダメ!
仕事をするため、開発ツールを下さいと言う。
そしたら、会社既定のツールをくれるはず

ツールをくれない、または使いにくい場合には、
会社と交渉すればよい

人間は、要望と現実のはざまに生きている。
これはどこの会社でも、常に起きていること。
コマツなどがやっている、持続的なカイゼン

一つ要望書を書くと、500円くれる会社もあるぐらい

579 名前:デフォルトの名無しさん mailto:sage [2015/12/29(火) 20:44:06.13 ID:bXnVWHmy.net]
禁止してるのって大体流出を防ぐためだろ?
それをクラウド活用とか一番危険な方法なんじゃね
素直に担当の者に文句言えよ

580 名前:デフォルトの名無しさん mailto:sage [2015/12/30(水) 03:24:06.22 ID:1yiA+igC.net]
サーバサイドで伺いたいんだけど
今は業務系の軽いの(カタログメンテと提供とか)を、
クライアントはBootstrapとAngularJS
サーバはPHPでREST応答するだけ
で書いてるんすよ、
SPAで一機能がViewとコントローラーとPHPで分けられて分かりやすいし今風の画面に出来るので割と満足
jQueryのスクリプトも消えたし

サーバもNode+Sailsに移行するのってどうかな?
まだ慌てる時間じゃないですかね
ややこしいSQLも多いしなー

581 名前:デフォルトの名無しさん mailto:sage [2015/12/30(水) 07:35:07.93 ID:VhbZvOcQ.net]
これからはSWも間に入ってくるからな。
まあSWを単なるキャッシュプロキシとしか使わないのなら既存のアーキテクチャを弄らないでいいし、
SPAを半分やめる(SW側でHTML生成)と言う手ならCGIと相性もいい。
だが本当にSPAでやっていくつもりならNodeとかの方が相性がいいよ。

582 名前:デフォルトの名無しさん mailto:sage [2015/12/31(木) 04:04:36.44 ID:Ncwbd3/V.net]
SWって何です?

583 名前:デフォルトの名無しさん mailto:sage [2015/12/31(木) 04:08:01.18 ID:GyVEm/AS.net]
ストライクウィッチーズ

584 名前:デフォルトの名無しさん mailto:sage [2015/12/31(木) 04:08:26.31 ID:GyVEm/AS.net]
略してストパン



585 名前:デフォルトの名無しさん mailto:sage [2015/12/31(木) 14:30:23.50 ID:CH+I0c4Z.net]
非同期な処理を5個実行して、その結果が全部得られたら
ある関数を実行したいのですが、そういう場合、全部結果が得られた
時点でイベントを発生させるなどの方法はありますか?

586 名前:デフォルトの名無しさん mailto:sage [2015/12/31(木) 14:46:12.72 ID:YSMAjmpZ.net]
>>576
あるよ

587 名前:デフォルトの名無しさん mailto:sage [2015/12/31(木) 15:14:27.69 ID:CH+I0c4Z.net]
>>577
先生、教えて下さい

588 名前:デフォルトの名無しさん mailto:sage [2015/12/31(木) 15:25:56.96 ID:FyuHG/9Y.net]
Promise.allでググれ

589 名前:デフォルトの名無しさん mailto:sage [2015/12/31(木) 15:39:13.53 ID:CH+I0c4Z.net]
>>579
プロミス無しの方法論教えてください

590 名前:デフォルトの名無しさん mailto:sage [2015/12/31(木) 15:43:03.00 ID:YSMAjmpZ.net]
>>580
あるけど、promiseが楽やで

591 名前:デフォルトの名無しさん mailto:sage [2015/12/31(木) 15:46:45.00 ID:CH+I0c4Z.net]
>>581
先生教えてください

592 名前:デフォルトの名無しさん mailto:sage [2015/12/31(木) 16:05:17.19 ID:CH+I0c4Z.net]
>>581
早く教えてくれよ。明日お客さんに提出なんだ。

593 名前:デフォルトの名無しさん [2015/12/31(木) 18:30:48.73 ID:D5b/7JR8.net]
javascriptでcsvのファイルのDBをADOでSQL実行後のデータをHTMLに表示したいです。
普通にやればadodb.ConnectionのDriverを指定するところでエラーが出て困ります。
いい方法はございませんか?

594 名前:デフォルトの名無しさん mailto:sage [2015/12/31(木) 18:53:58.39 ID:P+3Yt6u7.net]
>>576
function trigger() {
; var i = 0;
; return = function() {
; i++;
; if(i === 5) {
; }
}



595 名前:デフォルトの名無しさん mailto:sage [2015/12/31(木) 18:57:55.23 ID:P+3Yt6u7.net]
途中で送信してもうた
function trigger() {
var i = 0;
return function() {
i++;
if(i === 5) {//ここにやりたい処理を書く}
}
}

んで非同期処理の中でtrigger()する

596 名前:デフォルトの名無しさん mailto:sage [2015/12/31(木) 19:42:40.92 ID:CH+I0c4Z.net]
>>586
師匠、ありがとうございました。






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<290KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef