6
票
承認済み
意図せず動作している Node.js のプロセスを確実に停止するには?
今回のケースでは、node.jsプロセスは問題なく終了されていたものの、localhost:8080にService Workerが登録されたままであったためにlocalhost:8080にアクセスすると依然としてページが表示されていたと考えられます。
Service Workerはオフラインの状態でもページを動作させる機能を持つため、node.jsプロセスを終了してlocalhost:...
5
票
承認済み
Promiseオブジェクトのfinallyメソッドを実行するとエラーが出るのはなぜでしょうか?
node.jsのバージョンが古いと思われます。
Promiseのfinallyは比較的新しいメソッドなので、古い環境では使用できません(MDN)。
node.jsで使用するには、node.jsのv10以上が必要です。
5
票
承認済み
javascript で、同じ値のオブジェクトならば必ず同じ文字列になる stringify はどうやったら記述できる?
json-stable-stringify をお探しではありませんか?
https://www.npmjs.com/package/json-stable-stringify
> var stringify = require('json-stable-stringify');
undefined
> var obj = { c: 8, b: [{z:6,y:5,x:4},7], ...
4
票
javascriptのエラー内容が分かりません
(この回答はもともと重複先の質問に投稿したものですが、重複としてクローズされたためこちらにも投稿しました)
server.jsでリクエストのパスにかかわらずsocket.htmlを返しているからではないでしょうか。
ブラウザは<script src="client.js"></script>というタグを見てサーバーに/client.jsをリクエストしますが、...
4
票
承認済み
JavaScript実行環境の判定方法について
2020/2/11 現在、この記事を参考に isNode を実装してみたがうまくいかなかった。
前提としてブラウザー側には webpack を使っている。
webpack を使った環境においては process も require も undefined ではない。
代わりに process.title の値を判断材料にしてみた。
const isNode = (process.title !==...
4
票
'node_modules' は、内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチ ファイルとして認識されていません。
質問者です。すみません
結局windows なのが原因だったようで、package.jsonのpathのところにある” を\でエスケープしてみたところ解決したようです。
閲覧くださった方々、ありがとうございます。
4
票
承認済み
所定のディレクトリにnode_modulesとしてのExpressをインストールするためにはどうすれば良いでしょうか?
git clone後、
1. cd advanced-interactivity-in-amp
2. npm install
で必要なモジュールがnode_modulesにインストールされます。
余談ですが、
1. npm installの-gはglobalオプションで、Node.jsで書かれたコマンド(npmなど)をインストールする場合に使います。global(今回の例ではndenv配下)...
4
票
意図せず動作している Node.js のプロセスを確実に停止するには?
node以外のサービスが動いている可能性がありますので
現在ポートを使用してるプログラムを表示できるlsofコマンドを用い
lsof -i:8080
��実行して下さい。
表示された結果のPIDという項目がプロセスIDですので、
こちらをkill -9 [プロセスID]で停止させれば表示されなくなるはずです。
4
票
承認済み
意図せずプロセスが終了しない時の調査方法
processモジュールにドキュメント化されていないAPIがあります。
process._getActiveHandles();
process._getActiveRequests();
これらを使うと、Worker queueに残っているもの(プロセスを活かし続けているもの)を確認できるかもしれません。
4
票
動作テスト中にメモリを大量に消費するバグに遭遇し、PCが動作しなくなった解決策は何ですか
消費メモリ量が実メモリ量をはるかに超えた結果として スラッシング が発生している状況なわけです。
その「メモリを大量に食うソフト」の未保存データは保存するすべがないのであきらめましょう(数年間その状態で放置しておけば保存されているかもしれないが、それなら再起動後に再入力するほうが手早い)。
他のプロセス、...
4
票
承認済み
スプレッド構文での配列コピー時の参照について
01
あなたが作成された例は典型的な「シャローコピー」の例であり、「シャローコピーとディープコピーの間」ではありません。
「シャローコピー」と言うのは「器だけのコピーを行い、器に入れられている個々の要素についてはコピーしない」ことを表します。まさにあなたの例の通りです。「器」はコピーされているので、obj_ary === obj_ary_copyは成立しませんが、個々の要素はコピーされないので、...
3
票
承認済み
debugモジュールで標準出力に表示されないのはなぜ?(`process.env.DEBUG`で環境変数を設定しているつもりなんだけど)
確かにprocess.env.DEBUG = "puppeteer-loadtest";で環境変数DEBUGを設定できるのですが、その例ではDEBUGを設定するのが遅すぎます。
というのも、DEBUGの値���読み込まれるのはdebugオブジェクトを作ったとき、すなわちconst debug = require('debug')('puppeteer-loadtest');が実行されたときだからです。...
3
票
承認済み
uglifyjs-webpack-pluginでライセンスコメントを残したい
まず原因ですが、UglfyJSのReadmeにある
however, that there might be situations where comments are lost.
と同等の状態になっているようです。具体的には即時関数の前に;がついていることにより、この;から前は不要な文として先にドロップされてしまっているため(この際にコメントも一緒に失われている)のようです。
...
3
票
JSONデータを成形して出力する
提示の質問の目的を達成できるコードを試しにTypeScriptで書き直してみたところ(型定義などは雑ですが)メイン部分は20行弱で達成することができました。以下に示します。
type IListValue = {
kind: "listValue"
listValue: {
values: IValue[]
}
}
type IStructValue = ...
3
票
意図せず動作している Node.js のプロセスを確実に停止するには?
killコマンドは使ったことがなく、果たして本当に使っても良いかどうか分かりません。
使っても問題ありません。
kill -9 [プロセスID] は対象のプロセスにSIGKILLを送ることでプロセスを終了させます。本番環境で動いているサービスなどならともかく、開発用に動いており不要であると感じている場合、SIGKILLを送信しプロセスを終了させてしまっても問題ないでしょう。
参考:Man ...
3
票
承認済み
JavaScript の&とはなんでしょうか
https://developer.mozilla.org/ja/docs/Web/JavaScript/Guide/Expressions_and_Operators
ビットごとの論理積です。この場合 val には整数値が入っているはずで、その値のビット22が0か1かの判別をしています。
3
票
以下のようなPromiseを利用したコードをasync/awaitで書き換えることは可能でしょうか?
お考えの通り、async/awaitでこれを書き換えることはできません。
特にhello関数に関しては、このようにコールバック関数による非同期処理をPromiseに変換する目的でnew PromiseでPromiseを作る場合は、これをasync関数に書き換えることはできません。hello関数はこのように書くほか無いと思います。
プログラムの後半部分に関しても、...
3
票
以下のような正規表現でmatchを使うと、プログラムの実行が終わりません
組み合わせ爆発が起っているのでしょう。
regex = /(\w+(,|\s)*)+;/
で ; の有無で null になるはずということですが、regex 表現の最後尾にあるため、コンピューターは、その前の (\w+(,|\s)*)+ の部分のパターンを作ってから最後に ; を付けたパータンを考え、そこで初めて与えられた文字列にマッチするかしないかを、律儀に全パターンを作って試して行きます。
...
3
票
承認済み
毎日同じ時刻にJavaScriptを実行するには?
Node.js を実行する Linux サーバーが手元にあるのであれば、cron を使って定期実行するのが古典的です。JavaScript に限らず使われる手法です。
※ Windows サーバーの場合 cmd.exe における cron 的なコマンドとして Schtasks.exe が知られているようです。私は使ったことがありませんが補足まで。
※ Function as a Service (...
3
票
承認済み
Windows で npm install を実行するとエラーが発生する
XY問題です。
ソースコードはおそらくlinux or unix環境にて作成されたものですが,
想像しても何も得られません。
そのソフトウェアのドキュメントを参照すればわかることです。ドキュメントの読み方がわからないのであれば対象のソフトウェアを提示すべきです。対象のソフトウェアを秘匿したいのであれば自己解決するしかありません。
...
3
票
NodejsでMySQLのクエリ文の繰り返し処理を同期的に実行したい
今回はPromiseなどを使用せずとも下記で実行できたため、自己解決とさせていただきたいと思います。
connection.query('select * from folder', (error, results) => {
console.log(results);
while (parentIdArray.length !== 0) {
...
2
票
承認済み
Socket.IOでクライアントを切断しても、今まで接続されていたクライアント分イベントが飛ぶ
接続があるたびに watcher.on('add',...); でハンドラを登録して、削除していないので、
当然のように思います。かといって、削除をする手段は用意されていないようです。
そこで、watcher.on('add', ...); は接続時のハンドラ内で行うのではなく、
外で一度だけ実行すべきだと思います。
watcher.on('add', function(path) {
...
2
票
承認済み
別ユーザーでインストールしたツールをPHPのexecで実行するとPermission deniedになる
確認してもらった内容を見る限りではec2-userのホームディレクトリのパーミッションが以下の様にrwx------(700)になっており、他のユーザーから参照できないのが原因だと思います。
drwx------ 14 ec2-user ec2-user 4096 Mar 19 08:08 .
実際にphpを実行するユーザ(webサーバ?)の権限で参照できるように、...
2
票
承認済み
puppeteerでflashを有効にするには?
私も同じ問題でハマりました。
puppeteer.launchでオプションをつければ可能なようです。
const browser = await puppeteer.launch({
headless: false,
args: [
'--ppapi-flash-path= {FLASH_PATH}',
]
});
...
2
票
Node.jsのhttp.Server.on()メソッドについて
http.Serverを含む多くのNode.jsの組み込みクラスはEventEmitterを継承しており、この.onもその一部です。
emitter.on(eventName, listener)
各イベントについては各クラスのドキュメントにあるとおりです。emitter.onはサンプルでも使われている通り、イベント名とリスナーのコールバックを引数にとります。
...
2
票
承認済み
nodejsでの逐次処理について
Promise のロジックに関しては全く問題がないと思います
質問者様が考えるように、Promiseを使った記述はなんでもできる代わりに、冗長になりがちです
この問題を解決するために async / await という機能が追加されました
async function は戻り値を Promise に強制してくれます
console.info( (async function() {return ...
2
票
承認済み
node.jsで複数行のSQLを書くとき、整形がうまくいかない
これはエディタの問題ではなく、文字列リテラルが複数行になるときの文法の問題です。ご提示のプログラムのような文字列リテラルの書き方は構文エラーであるため、エディタでの表示もご想定とは異なるものになっています。
Node.js において、シングルクォートで囲った文字列リテラルはその中で改行できません。改行が文字列リテラルより優先されます。プログラム中の改行を文字列中の改行として扱う場合は、...
2
票
承認済み
javascript の function とアローについて
グローバルに直接関数を定義するのは今も昔も極力使用しないのが通例です。
node.jsでのrequireやES6からのimport等と、モジュール化の話となり、質問の関数定義の方法と違いについてから乖離する為、関数定義の方法と違いについて記述します。
結論としてはarrow functionが使える場合は、arrow functionのほうが好ましい場合が多いです。...
2
票
nodejs で erb のようなテンプレート処理が行いたい
Node.jsではEJSというものがあります。
http://www.embeddedjs.com/
npmコマンドでインストールできます。
https://www.npmjs.com/package/ejs
無効化に投票
関連するタグ
node.js × 383javascript × 151
npm × 40
typescript × 18
reactjs × 17
html × 16
firebase × 14
gulp × 13
mysql × 12
discord × 12
socket.io × 12
macos × 10
aws × 9
vue.js × 9
heroku × 9
webpack × 9
websocket × 8
linux × 7
vscode × 7
aws-lambda × 7
bluemix × 7
express × 7
windows × 6
nginx × 6
twitter × 6