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


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

【node.js】サーバサイドjavascript 4【io.js】



1 名前:デフォルトの名無しさん mailto:sage [2016/04/11(月) 16:28:34.52 ID:ORuOCkHy.net]
pythonやrubyやPHPと同じ土俵でjavascriptが使えるようになりました。
サーバサイドjavascriptについて語りましょう。

node.js - googleが開発したV8エンジン上で実行できる処理系
nodejs.org/
io.js - node.js 互換で Joyent の影響からの脱却を目指す処理系
iojs.org/
Rhino - JVM上で実行できる処理系
https://developer.mozilla.org/ja/Rhino

io.js の経緯
stackoverflow.com/questions/27309412/what-is-the-difference-between-node-js-and-io-js
javascriptはrubyと比較してもかなり速い
shootout.alioth.debian.org/u32/benchmark.php?test=all&lang=v8&lang2=yarv
基礎から学ぶNode.js
gihyo.jp/dev/serial/01/nodejs
node.jsの概要とアプリケーション開発の準備
gihyo.jp/dev/serial/01/realtimeweb/0002

前スレ
【node.js】サーバサイドjavascript 3【io.js】(c)2ch.net
echo.2ch.net/test/read.cgi/tech/1419673207/
【node.js】サーバサイドjavascript 2【Rhino】
peace.2ch.net/test/read.cgi/tech/1358937029/
【node.js】サーバサイドjavascript【Rhino】
toro.2ch.net/test/read.cgi/tech/1310087535/

487 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 00:38:44.04 ID:Ibdd+rg/.net]
そういやブラウザではFile APIだったなw

488 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 00:39:23.93 ID:i0oWHzgI.net]
>>471
時間がかかる処理をキャンセルじゃなくて、待つのをキャンセルするじゃね?

489 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 00:44:38.31 ID:Ibdd+rg/.net]
>>477
それは言い方の違いでしかないよ

nodeでcallbackを使うやつの話であれば、そもそもなんで
nodeはPromiseを使わなかったのか?の話になるだろ。

それはcallbackを使う方が速いのと、
何度もイベントを発生する必要があるものがあるからだろうな。

つまり、Promiseでは要件に耐えられないから
Promiseではなくcallbackを使ったんだよ。

fs.fstatでは何度もイベントが発生するわけじゃなくても、
何度もイベントが発生することが可能なcallbackを使っている。

それは一度しかイベントが発生しなくてもPromiseではなく
Observableを使ってよいのと同じ考えだ。

490 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 00:49:22.15 ID:cNZiPnVn.net]
>>478
promiseの仕様がいつできたかも知らないのかよ
nodeはその前からあるんだよ
スレ違い野郎は消えろ

491 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 00:51:43.82 ID:Ibdd+rg/.net]
stackoverflow.com/questions/30299613/why-does-nodejs-not-use-promise-for-the-readfile-api

Node’s early iterations used Promises in its nonblocking API. However, in February 2010,
Ryan Dahl made the decision to switch to the now-familiar callback(err, results...)
format, on the grounds that Promises are a higher-level construct that belongs in “userland.”

英語わかるか?
Nodeは最初Promise使っていて、callbackに変えたって書いてあるんだぞ

492 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 00:54:37.05 ID:Ibdd+rg/.net]
(JavaScriptの)Promiseはいつできたんだっけな?
前に調べたんだが忘れたな。

ここを見る限り2009年なのは間違いないが。
wiki.commonjs.org/index.php?title=Promises&oldid=516

493 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 00:55:18.13 ID:cNZiPnVn.net]
そのpromiseはes6のpromiseとは別物だ

494 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 00:56:40.01 ID:cNZiPnVn.net]
nodeでobservableに相当するのはstream
fs.fstatはstreamを使わない
それが答え
以上

495 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 01:03:43.79 ID:Ibdd+rg/.net]
>>482
それは当たり前だが、Promiseを捨てた理由は同じだ

>>483
fs.fstatはPromiseを使わない。
それが答えだろう?w



496 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 01:05:41.12 ID:Ibdd+rg/.net]
> nodeでobservableに相当するのはstream

ちなみに、streamを知らない人に説明しておくと、
streamが使ってるのはPromiseではなくcallback

497 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 01:10:44.04 ID:cNZiPnVn.net]
>>484
promiseを使わない理由がキャンセルできないからじゃないのは分かってんのかよ
システムコールレベルでキャンセルする方法がないのにobservableにするメリットあんのかって問いに答えてねーだろ
nodeは単発にcallback、連発にstreamで使い分けてる
大は小を兼ねるとは限らないんだよ

498 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 01:24:00.13 ID:Ibdd+rg/.net]
システムコールレベルって何の話?

Win32APIとかレベルの話してるの?


独自用語で話すんなよ

499 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 01:25:28.87 ID:Ibdd+rg/.net]
ふむ

Windows Vista での Win32 I/O キャンセル サポート
https://msdn.microsoft.com/ja-jp/library/aa480216.aspx

500 名前:デフォルトの名無しさん [2017/04/08(土) 01:27:17.78 ID:GAoRTfTW.net]
何やこいつ
キャンセルする必要がない単発はPromiseでいいし、キャンセルが必要か連発ならobs使えばいいって話だろ
しゅうきょーせんそーかな?

501 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 01:28:10.51 ID:Ibdd+rg/.net]
単発だからってキャンセルする必要が無いことにはならないんだが?

言ってる意味わかる?

502 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 01:31:42.23 ID:Ibdd+rg/.net]
Observableが得意なのはキャンセルだけじゃなくて
並列処理もなんで、fs.fstatを並列で実行したいときにも
簡単にかけるというメリットも有るな

503 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 01:33:57.12 ID:i0oWHzgI.net]
いくら君らが言い合っても、現実はかわらないでしょ?
今ある仕様がすべてで文句かるなら他の言語つかいなよで終わる話しじゃないの?
生産性のない答えもない事で争って暇すぎるだろ

504 名前:デフォルトの名無しさん [2017/04/08(土) 01:36:49.14 ID:GAoRTfTW.net]
>>490
「キャンセルする必要がない場合は」
よく嫁

505 名前:デフォルトの名無しさん [2017/04/08(土) 01:37:27.20 ID:GAoRTfTW.net]
こいつもしかしてIT速報の管理人か?
転載禁止やぞ。対立煽りはNG



506 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 01:45:22.63 ID:w3FPiolV.net]
スプーンとお玉の関係に似てる。
ジャムをすくうのにお玉を使ったら逆に不便だろ。そこは適切にスプーンを使え。
キャンセル処理がPromiseだと絶対無理というわけでもないし、Rxが必要とも思えないプロジェクトで無理やりRxを使う必要もない。

507 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 01:49:13.35 ID:Ibdd+rg/.net]
>>493
> 「キャンセルする必要がない場合は」

それはまずないだろうねw

508 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 02:25:27.18 ID:FnclMLRN.net]
レスの文体からして前からJSスレに常駐してる荒らしでしょ
コピペブログ管理人もやってたのかは知らんが

509 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 02:31:02.63 ID:hy422I1n.net]
>>487
システムコールってwikipediaにもエントリあるのに
unix/linux系はダメなwindows君か
どうりでダメなわけだ

510 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 02:35:20.51 ID:Ibdd+rg/.net]
>>498
分かってないなw
なんでシステムコールの話がでてくるんだってことだよ。

nodeのAPIと、OSのシステムコールを
一対一で直接結びつける必要はないっつーの

nodeのAPIは単純な一命令でも、内部の実装は
何回もシステムコール呼んだって良いわけだ。

それが分かってないから、お前はシステムコールが
キャンセルできるかどうかなんて言い出したんだろ
こっちは全部お見通しだってーの

511 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 05:35:10.56 ID:iZgQ7lMc.net]
fetchはキャンセルできる必要があるが、
fetchの戻り値をObsevableにするのは駄目。
Obsevableって一様な幾つものデータを受け取るのに向いているので
fetchのように幾つかの段階で全然違うものが帰って来るのには向いていない。

単純に、Responseにabortメソッドを付けるのが良いと思う
勿論途中のStreamをObsevableにするのはとても良いと思うけど、
それを含んだ全体をするのはおかしい。

512 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 05:38:38.21 ID:iZgQ7lMc.net]
というか考えたら分かると思う。
キャンセルしたいのはfetchではなく、DLなのだから。
やっぱりCancelToken以外の解は無いと思うよ。

513 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 17:16:04.09 ID:uEU+oXmi.net]
イベントでいいじゃんかよ、もう

514 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 17:29:52.27 ID:py60arCP.net]
> キャンセルしたいのはfetchではなく、DLなのだから。

fetchはデータ送信もするんだが?
その場合キャンセルしたいのは何だよ

515 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 17:40:38.81 ID:py60arCP.net]
>>500
> 単純に、Responseにabortメソッドを付けるのが良いと思う

fetchの戻り値はpromiseであってresponseではない。

responseはpromiseのthenの時に渡される。
promiseのthenが呼び出されるのはfetchの処理が完了した後。

つまりresponseを取得したとき=fetchし終わった時に
abortするのは遅すぎる



516 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 18:46:58.17 ID:1OsO7EoR.net]
>>499
なにを見通してるのかさっぱり分からんがnodeは低水準のapiを提供するものだ
そうすれば複数のシステムコールを組み合わせた高水準apiはユーザーレベルのライブラリで実現できる
だからfsモジュールは意図的にposixの薄いラッパーになっていてキャンセルはない

517 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 18:50:52.30 ID:1OsO7EoR.net]
>>504
仕様にはstreamが追加されてる
https://fetch.spec.whatwg.org/#streams

518 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 18:56:59.44 ID:py60arCP.net]
>>505
> nodeは低水準のapiを提供するものだ

どこにそんなことが書いてあるのか?

nodeの立場はブラウザと同じだ。
JavaScriptの実行環境だ。

お前の理屈だと、ブラウザは低水準のAPIを提供するものということになる。

519 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 18:58:44.31 ID:py60arCP.net]
>>505
> だからfsモジュールは意図的にposixの薄いラッパーになっていてキャンセルはない

じゃあ、例えば、fs.lstatSync は posixのどの薄いラッパーなのか言ってみ

520 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 19:01:09.86 ID:py60arCP.net]
>>506
> 仕様にはstreamが追加されてる
どっちみち仕様を加えるなら
Observableにした方がいいだろうな。

521 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 19:02:35.33 ID:py60arCP.net]
しかもPOSIXは非同期I/Oをキャンセルする機能あるじゃんwww

https://linuxjm.osdn.jp/html/LDP_man-pages/man3/aio_cancel.3.html
aio_cancel - 完了していない非同期 I/O リクエストをキャンセルする
POSIX.1-2001, POSIX.1-2008.

522 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 19:22:58.68 ID:+j3lf9vK.net]
>>507
https://nodejs.org/api/fs.html
File I/O is provided by simple wrappers around standard POSIX functions.

>>508
lstat

>>510
posix aioはほとんどのosで実装されてないしnodeでもサポートしてない

523 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 19:25:59.41 ID:+j3lf9vK.net]
>>510
細かく言うとposix aioはほとんどのos kernelで実装されてない
gnuがユーザーレベルのライブラリとして実装したものがあるだけ

524 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 19:34:34.87 ID:+j3lf9vK.net]
manだとlstat(2)に対して>>510のaio_xxx(3)なのでシステムコールじゃないことが分かる

525 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 19:36:55.48 ID:py60arCP.net]
>>511
lstatは非同期じゃないぞw



526 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 19:39:34.36 ID:+j3lf9vK.net]
>>504
fetch apiが返すpromiseはfetchが完了してからresolveするわけではない
完了してからresolveするのはres.text()が返すpromise

527 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 19:40:34.49 ID:+j3lf9vK.net]
>>514
>>508のlstatSyncは非同期じゃない

528 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 19:43:59.84 ID:py60arCP.net]
>>516
逆だったなw
fs.lstatの方だ

529 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 19:45:48.32 ID:+j3lf9vK.net]
>>517
lstat

530 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 19:46:03.01 ID:py60arCP.net]
>>515
> fetch apiが返すpromiseはfetchが完了してからresolveするわけではない

完了してからだよ。正確にはレスポンスが返ってきてから、
データの受信が完全に完了してからではない。

でないと、Response.statusが取れるわけがないだろう?

531 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 19:46:40.03 ID:py60arCP.net]
>>518
それではシステムコールにあるPromise相当のものは何?w

532 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 19:51:37.12 ID:+j3lf9vK.net]
>>519
そう、だから完了してからじゃないじゃん
最初のチャンクが届いたらresolveする
「fetchの処理が完了した後」は明らかな間違い

533 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 19:53:33.42 ID:+j3lf9vK.net]
>>520
システムコールにはない
単にワーカースレッドでlstat呼ぶだけ

534 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 19:53:53.72 ID:py60arCP.net]
>>521
Fetchの処理はリクエスト投げてレスポンス戻すところまでだよ。
ダウンロードが終了するまでの話は最初からしてない

で、Fetchのキャンセル(thenが発動する前)はPromiseでできるの?
できないでしょ?
そこに新しい仕様が必要ならObservableを使えば良いわけさ。

535 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 19:54:42.49 ID:py60arCP.net]
>>522
だろう? Promiseを含めて「システムコールの軽いラッパー」と
お前が呼ぶならば、Observableを含めたって「システムの軽いラッパー」になる



536 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 20:03:11.46 ID:0e5YIioE.net]
>>523
fetch apiがpromiseベースでバカなのは何年も前から言われてるし俺も言ってきたからそこに反論する気はない

537 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 20:05:16.72 ID:0e5YIioE.net]
>>524
キャンセルできなくて単発で結果が決まるシステムコールのラッパーにpromiseよりobservableを選ぶメリットは?

538 名前:デフォルトの名無しさん [2017/04/08(土) 20:20:53.33 ID:cXe/TGOq.net]
システムコールとライブラリの違いをわかってないやつがいそうだから、用語をシステムAPIかOSのAPIで統一してくれ

539 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 20:27:37.55 ID:py60arCP.net]
>>526
並列処理がしやすいから

540 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 20:31:19.27 ID:iZgQ7lMc.net]
>>523
何度も説明してるが、キャンセルは必要だが、Observableはそぐわない
CancelTokenのようなものじゃないと実際齟齬が出るし
その流儀に則って真似して使いやすいように色んなAPIを実装していくのは大変

541 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 20:33:09.43 ID:py60arCP.net]
俺がobservableの話で並列処理の話を始めると
すぐにキャンセルの話に変えるやつってなんなんだろうねw
わざとなのかな?

542 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 20:38:17.35 ID:FGB2+VgV.net]
>>528
正しくは並行処理だが常に必要となるわけではない
必要ならpromiseをobservableでラップすればいいだけ
そのために無駄に高機能なapiを土台にするメリットはない
シンプルの上にリッチを乗せることは有意だが逆は無意味だ

543 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 20:40:15.25 ID:py60arCP.net]
> 正しくは並行処理だが常に必要となるわけではない

絶対に必要ないならいらんだろうさ
常に必要となるわけではない=必要な場合もある。
ならば同じやり方でやったほうが楽

544 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 20:49:17.82 ID:FGB2+VgV.net]
長さ1の配列があればスカラ値の変数はいらない

let x=1
let y=2
let z=x+y

これは配列が必要な場合と同じやり方で

let x=[1]
let y=[2]
let z=[x[0]+y[0]]

ってやった方が楽
なるほど

545 名前:デフォルトの名無しさん mailto:sage [2017/04/09(日) 16:42:26.31 ID:4FESG0wM.net]
なるほどじゃねぇよ



546 名前:デフォルトの名無しさん mailto:sage [2017/04/09(日) 17:00:22.44 ID:ZPMPIHcF.net]
Observableだけでなく、jQueryもLodashもそうなんだけど、
配列をスカラのように扱うことができるんだよね。

1と2以上を同一化して処理できる。

例えばquerySelectorAllは配列を返す。$()だとスカラ値を返す
どちらもセレクタから複数の要素を検索しているようだけど、この違いによって
querySelectorAllではループ処理が必要になるが、jQueryではループ処理が不要になる

Promiseも単数だから並列しようと思ったら配列が必要になってループも必要になる
つまり>>533でいう後者の書き方
Observableであれば単数も複数も同じように処理できるから、>>533の前者の書き方で
複数の対象を単数と同じ書き方で並列に処理できる。

547 名前:デフォルトの名無しさん mailto:sage [2017/04/09(日) 18:21:09.53 ID:c0gwQMp6.net]
querySelectorAllが配列を返すなんてとんと知りませんでしたわ

548 名前:デフォルトの名無しさん mailto:sage [2017/04/09(日) 19:39:40.08 ID:FYNHGER+.net]
そもそも「配列」という言葉の定義がない
因みにNodeListは@@iterator対応の予定がずっとある

549 名前:デフォルトの名無しさん mailto:sage [2017/04/09(日) 20:58:23.64 ID:04OXxo7q.net]
jQueryしか使わないゆとりだから下のレイヤーのことは知らないんだろ

550 名前:デフォルトの名無しさん mailto:sage [2017/04/09(日) 21:08:17.95 ID:qkkzIUk4.net]
下層民同士仲良くしなさいよ〜
粛清すっぞ

551 名前:デフォルトの名無しさん mailto:sage [2017/04/10(月) 16:04:40.78 ID:/vWjJFQd.net]
一年に1,2回はtoArrayをどうするかの話題で盛り上がるよね
Array、TypedArray、@@iterator、length、Array.isArrayとか沢山楽しい話できるよね

552 名前:デフォルトの名無しさん mailto:sage [2017/04/11(火) 15:44:57.90 ID:EI2QNfVc.net]
キャンセルトークン方式のプロポーザル
https://github.com/tc39/proposal-cancellation

553 名前:デフォルトの名無しさん mailto:sage [2017/04/11(火) 20:28:11.22 ID:rWanRa9I.net]
>>541

https://azu.github.io/slide-what-is-ecmascript/slide/12.html
Stage 0: Strawman
アイデア

から抜け出したら、もう一回知らせてくれ
せめてStage 3にならなければ評価する価値もない

554 名前:デフォルトの名無しさん mailto:sage [2017/04/11(火) 20:53:27.45 ID:CJtRplzd.net]
stage1のobservableも評価する価値がない
よってこの話題完全終了

555 名前:デフォルトの名無しさん mailto:sage [2017/04/11(火) 20:56:52.33 ID:3Yv+2Fi9.net]
50歩100歩ってやつだな。
差は2倍もあるということだ



556 名前:デフォルトの名無しさん mailto:sage [2017/04/11(火) 21:09:11.09 ID:62uXcToV.net]
デバッグ用にconsole.logで出力を行ってるんだけど、foreverで起動するときはどこにも出力されてないって事でいいのかな?

557 名前:デフォルトの名無しさん mailto:sage [2017/04/11(火) 21:46:41.59 ID:fGKCOXVl.net]
今日追加されたのより一歩進んでたって話にならんよ

558 名前:デフォルトの名無しさん [2017/04/12(水) 12:43:00.43 ID:rqT+n0Ti.net]
>>544
ゴールまで千里の道というオチですね

559 名前:デフォルトの名無しさん mailto:sage [2017/04/12(水) 16:04:44.52 ID:WRJ4LE6o.net]
>>545
Optionsを観ると以下のようになってる。
-o OUTFILE Logs stdout from child script to OUTFILE
-e ERRFILE Logs stderr from child script to ERRFILE

560 名前:デフォルトの名無しさん [2017/04/16(日) 06:10:01.13 ID:JlKTjebd.net]
ln -s -f /dev/null /dev/stdout

561 名前:デフォルトの名無しさん mailto:sage [2017/04/21(金) 22:47:20.35 ID:vwhSF093.net]
Converting circular structure to JSON
at JSON.stringify

自分なりにdeepCopyつもりのコードで
上記エラーが出た場合に、原因なコードを簡単に見つける方法ってどんなのがありますでしょうか?

562 名前:デフォルトの名無しさん mailto:sage [2017/04/22(土) 11:59:52.05 ID:WQjYmpaa.net]
>>550
stackoverflow.com/questions/14962018/detecting-and-fixing-circular-references-in-javascript

563 名前:デフォルトの名無しさん [2017/04/25(火) 16:04:38.46 ID:+ad05VVs.net]
circular structur
原因書いてますやん

564 名前:デフォルトの名無しさん mailto:sage [2017/04/26(水) 14:11:46.04 ID:mOputr8e.net]
>>551
まさにピッタリの解説でした。ありがとうございました。

565 名前:デフォルトの名無しさん mailto:sage [2017/04/28(金) 08:36:18.97 ID:NZ0i2p+n.net]
循環参照を持っていてもちょっと関数噛ましてテーブル2つに変換すればJSONに落とし込むことは可能だよ



566 名前:デフォルトの名無しさん [2017/04/28(金) 12:43:11.19 ID:TC+lQYaW.net]
以下のように表記を統一するクラス(またはデータベース)でありますでしょうか?

'php' => 'PHP' ,
'perl' => 'Perl' ,
'javascript' => 'JavaScript' ,

567 名前:デフォルトの名無しさん mailto:sage [2017/04/28(金) 13:10:12.31 ID:ytJUGaM1.net]
自然言語処理用でいいの最近見たけど忘れた

568 名前:デフォルトの名無しさん [2017/04/28(金) 15:01:07.81 ID:TC+lQYaW.net]
思い出してください w

「自然言語処理 "単語の正規化" 」でググってみましたがズバリ思っているようなのはヒットしませんでした。
どなたか是非!

569 名前:デフォルトの名無しさん mailto:sage [2017/04/29(土) 05:10:42.30 ID:GfKuDHiR.net]
つうか全部小文字の単語を直したいだけの辞書なら
通常の固有名詞辞書にちょっと手を加えればいいだけじゃん

570 名前: mailto:sage [2017/04/29(土) 11:53:18.38 ID:R/nsoadB.net]
freetaggerとか昔使ったことあるけど、javaScriptなんかの表記の統一は辛かったような。
isDisabledのiはどうするのとか、結局プロジェクト向けのスクリプト書いた気がする。

571 名前:デフォルトの名無しさん mailto:sage [2017/04/29(土) 12:10:57.72 ID:xHNM2Zad.net]
>>559
結局はそうだよな
完全な答えがあるものじゃないし

572 名前:デフォルトの名無しさん mailto:sage [2017/05/03(水) 23:37:41.27 ID:jNZhewdQ.net]
package.jsonの"scripts"に書いたコマンドをnpm runで実行する際はnode_modules/.bniがPATHに
追加されますが、これ以外に任意のディレクトリをPATHに追加する方法ってあるでしょうか。

573 名前:デフォルトの名無しさん mailto:sage [2017/05/03(水) 23:44:19.89 ID:/FJiuNZS.net]
実行するコマンドの前で設定するとか

574 名前:デフォルトの名無しさん [2017/05/04(木) 01:58:16.57 ID:arHoxXIF.net]
windowsだからpythonのpip以上にnpm厄介だな

575 名前:561 mailto:sage [2017/05/04(木) 11:09:36.82 ID:l8/ufUYV.net]
ありがとうございます。でもwindowsだとうまくいかないなぁ。

"somecommand": "set PATH=%PATH%;<パス> && <コマンド>"
#<コマンド>は内部でPATH環境変数を使用するスクリプトで、これ自体にはPATHが通っている。

&&の両側のコマンドが同時に立ち上がるんだから当然と言えば当然か。
でもコマンドプロンプトで順次実行する&に変えても結果は同じだった。
bashのexportみたいなのが使えればいいんだけど。



576 名前:デフォルトの名無しさん mailto:sage [2017/05/04(木) 11:15:14.24 ID:rRUt3/Oc.net]
めんどくせぇなぁ、
そのためのnpmライブラリでもあんだろ

577 名前:デフォルトの名無しさん mailto:sage [2017/05/04(木) 14:13:58.13 ID:PLZ28pn/.net]
cross-envが定番
https://www.npmjs.com/package/cross-env

578 名前:デフォルトの名無しさん mailto:sage [2017/05/04(木) 14:31:06.73 ID:lWCYxa45.net]
他にnpm-run-allとかrimrafとかあればwinでも動くnpm scriptsが書ける

579 名前:561 mailto:sage [2017/05/04(木) 15:13:22.65 ID:l8/ufUYV.net]
ありがとうございます。cross-envでいけました。

580 名前:デフォルトの名無しさん mailto:sage [2017/05/06(土) 06:40:04.53 ID:jJg9RTT4.net]
カオスですね

581 名前:デフォルトの名無しさん [2017/05/08(月) 19:19:22.70 ID:Eylo3eTX.net]
node.jsでimportを使うと


582 名前:SyntaxError: Unexpected token import
ってなるんですが、importに対応したnode.jsはまだ出てないのでしょうか?
[]
[ここ壊れてます]

583 名前:デフォルトの名無しさん mailto:sage [2017/05/08(月) 19:53:32.68 ID:zqCx33pk.net]
質問する前にぐぐれ
sakamock.hatenablog.com/entry/2016/02/03/091623
yosuke-furukawa.hatenablog.com/entry/2016/05/10/111102
va2577.github.io/post/18/

584 名前:デフォルトの名無しさん [2017/05/09(火) 01:01:42.73 ID:VdFod0fE.net]
>>571
importの使い方を聞いていません
babelとwebpackでimport書いてるので使い方は知ってます
node.js自体がimportを実装しているのかを聞いています

585 名前:デフォルトの名無しさん mailto:sage [2017/05/09(火) 06:20:18.78 ID:SYbF5UtF.net]
してないよ



586 名前:デフォルトの名無しさん mailto:sage [2017/05/09(火) 06:58:49.50 ID:i7CM3KKL.net]
*.mjsからはimport出来るようにしようぜ
ってのを結構前に読んだ気がするけど、まだ実装されたないんか?

587 名前:デフォルトの名無しさん mailto:sage [2017/05/09(火) 08:05:18.10 ID:SYbF5UtF.net]
実装どころか提案文書はドラフトのままだよ
(技術的検証が済んでACCEPTされないと実装に進まない)
検証だけであと1年以上掛かるってさ

なお拡張子(*.mjs)でES moduleかどうか判別する手法は
考え得る限り最低の糞という判断が下されたので無くなる






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

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

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