MongoDBで配列内の特定の値だけを更新する
やり方Mongo公式ドキュメントの$setとarrayFiltersを利用する実例このようなドキュメントを持つコレクションがある時。{"_id":1,"grades":[{"grade":80,"mean":75,"std":6},{"grade":85,"mean":90,"std":4},{"grade":85,"mean":85,"std":6}]}{"_id":2,"grades":[{"g...
View Article【JavaScript】値がundefined/nullの時だけtrue判定にする
値がundefinedとnullの時だけtrueとして判定したい(0はfalse判定にしたい)タイトルの通り、こんな場合どうするか。[JavaScript] null とか undefined とか 0 とか 空文字('') とか false とかの判定についてに全て書いてあるが、このトピックの部分だけまとめてみた。if...
View ArticlePromiseは何時呼ばれるのか?
Promiseは何時呼ばれるのか?使う分には今まであまり意識してこなかったのですが、async/awaitを呼ぶことで処理がブロッキングされるのではないかというのを懸念していたのと、そもそもどのタイミングでPromiseのcallbackがされるのか気になったので今更ですが調べてみました。...
View ArticleNode.jsからobnizでBME280(気温、湿度、気圧)センサーを動かす
これまでのおさらいRaspberry piにNode.jsをインストールするNode.jsでrequestモジュールを使ってHTTPリクエストを実行するNode.jsでIFTTTのWebhooksを使う(requestモジュール利用)今回のお話Raspberry...
View ArticleGoのプロジェクトでもタスクランナーとしてnpmを使う
Goのタスクランナーとして npmを使ってみたら案外よかった。Go に限った話ではないけど、Go が特に開発ツールチェーン周りの管理がしにくいので噛み合いやすいのではないかと思う。npmは Node.js用のパッケージマネージャだが、npm-scriptsという簡易なタスクランナー機能がついている。また、Node.js...
View ArticleDeno と Node.js 共通ソースコードで開発する方法
概要それなりにわかる人向けの記事なので各種説明を細かくは書きません。わからない用語は調べてください。Deno がリリースされていますね。モジュールシステムが Node.js と異なっているためにコード互換性がなくて問題になっている方もおられると思います。そういう方向けの記事です。Node.js は CommonJS が標準です。 Deno は ESModules のみ対応です。CommonJS...
View Articlevirtual背景のロジックのnpmパッケージを使ってデモを作成する話
はじめに先日、自分史上初めてnpmのパッケージを作成したので、これを使ったデモの作り方を説明しようと思います。前回の記事です。https://qiita.com/wok/items/9025059893a406f4307fこんな感じのものを作ります。なお、今回のパッケージバージョンは1.0.19を想定しています。前準備今回はReactでデモを作成します。まずは環境構築をしましょうcreate-rea...
View Article【Node.js v11】ディレクトリ内のファイルパスを再帰的に取得するワンライナー
ディレクトリ内全てのファイル一覧を取得するというありふれた処理ですがたまたまワンライナーを思いついたのでメモ代わりに紹介します同期メソッドなので使いどころには注意してくださいJavaScriptconstfs=require('fs')constlistFiles=(dir)=>fs.readdirSync(dir,{withFileTypes:true}).flatMap(dirent=&g...
View ArticleNode.js を動かす Dockerfile のサンプル
概要Node.js アプリケーションのシンプルなサンプルを作成するNode.js を動かす Dockerfile を作成するDockerfile から Docker イメージを作成するDocker イメージから Docker コンテナを作成するDocker コンテナを起動する今回の環境macOS CatalinaDocker Desktop Community 2.3.0.3Node.js...
View Articlesequelizeを利用したコードのtypescript化
背景今回は、前回書いたsequelizeのコードのtypescript化を試してみます。https://qiita.com/yusuke-ka/items/448843020c0406363ba5#sequelize%E3%81%A7%E5%AE%9F%E8%A3%85上記で作成したプロジェクト「sequelize」を直接変更してtypescriptのコードにしてみようと思います。typescrip...
View Articlewebworkerを含むnpmパッケージの作り方(仮)
はじめに先日、Virtual背景のnpmパッケージを作成しました。これは自分史上初めてのnpmパッケージ作成でした。今度は、以前作成したマルチバーコードリーダのバーコード検出部位(SemanticSegmentation)をパッケージ化してみることにします。このバーコード検出部位はwebworkerを用いて作っていたのですが、いろいろ検索してもwebworkerを用いたパッケージの作成方法がわからな...
View Articleasync/awaitを使った非同期処理
async/awaitとはPromiseをベースにした非同期のコードを簡単に処理するメソッドasyncを使った時、使わない時asyncを使うと、返り値をPromiseを使って表示させることになる。・asyncを使わない時constdoWork=()=>{}console.log(doWork())↓「undefined」が返ってくる(まだdoWork関数は何も定義されていないため)・async...
View Article【JWT(JSON Web Token)】Node.jsで実際に使ってみた(公開鍵・秘密鍵方式)
はじめに以前、JWTをNode.jsで使ってみる記事(コチラ)を書きましたが、これは共通鍵暗号化方式を使用したものでした。今回は公開鍵・秘密鍵暗号化方式を使用した場合のサンプルを作成したので、紹介したいと思います。JWTとは何かをまだ理解していない方は以下の記事から読んでみてください。【JWT(JSON Web...
View ArticleAWS Lambda Nodejsのバージョンが8から12に強制アップデートされたら Error: Cannot find module...
要約AWS Lambdaで利用するnodejsのバージョンが nodejs8 -> nodejs10以降のアップデートすると aws-sdkが組みこまれるようになるため node_modulesにaws-sdkを含んでいるとエラーになるので、取り除く必要がある本文nodejs8で書かれたAWS Lambdaスクリプトは非推奨となりました。 AWS...
View ArticleHTMLのタイトルを取得する [Node.js, シェルスクリプト]
httpリクエストでHTMLのページを取得して正規表現でタイトルを引っ張り出します。Node.jsを使う方法とシェルスクリプト(Bash)を使う方法で出来たので書き残しておきます。ちなみに、Node.jsもシェルスクリプトも初心者です。環境 Mac OS 10.14.6Node.jsNode.jsからダウンロードします。$ node -v v12.18.1...
View ArticleSemanticSegmentationを行うnpmパッケージを作ったので使い方を説明してみる
はじめに先日、大きな画像を分割してsemantic segmentationを行うnpm...
View ArticleFirebaseからGoogleSpreadSheetに書き込みをし、その更新をメール通知する
はじめに当記事は、FirebaseのCloudFunctionからGoogleSpreadSheetにFirestoreへ新規追加されたデータ内容の書き込みをし、その更新をメール通知する実装についての備忘録です。CloudFunctionの導入は省略しますが、宜しければこちらを参考にしてください。FirebaseからGoogeleSpreadSheetに書き込みを行う大まかな手順・FIrebaseの...
View Article【感想】Vue.js & FirebaseでTwitterライクなSNSアプリを作ろう
はじめに今回、私が学習に使用した教材はこちらです。教材提供サイトはこちらTechpitです。Vue.js &...
View Article