[NodeJS]TypeError: string.replaceAll is not a function の解決方法

BrowserのConsoleと同じコードをNodeJSで実行した時、Browserでは正常に動作するコードがNodeJSでは正常に動かないことがあります。
String.prototype.replaceAll()もその一つ「でした」。
今回はreplaceAllTypeError: string.replaceAll is not a function になる主な原因と解決方法を書きます。

原因

NodeJSのバージョンが低い。
NodeJSではString.prototype.replaceAll()v15.0.0から導入されました。
v15.0.0がreleaseされたのは2020-10-20ですので、その前に構築されたシステムではこのエラーを見ることがあるかと思います。

解決方法

方法1

NodeJSのバージョンをv15.0.0以上に上げる。
NodeJSのバージョンを気軽に上げる方法については下記のポストを参考にしてみてください。

方法2

string.replaceを利用し、正規表現にglobalグラグをつける。

const string = '2021-12-23';
console.log(string.replace(/-/g, '/'));
// 2021/12/23

Node.js

Posted by YongJin Kim