JavaScriptの小数点計算は正確ではないです。(BigNumber.jsを使いましょう。)
JavaScirptを使っていて、小数点の計算で誤差が出る問題に遭遇しました。
Javaなど、どのプログラミング言語でも同じですが、普通に計算していたら、誤差が出ます。
自力で対応するのはとても困難なので、ライブラリを使いましょう。
JavaScriptの場合は、いくつかライブラリがあるようですが、私はBigNumber.jsというライブラリを選択しました。
まあ、下記のサイトを参考にさせていただいたのですが……。
https://qiita.com/daikw/items/663bc0b5a4c025694974
使い方は、下記を参考にしました。
https://qiita.com/niharu/items/52ee466c37c701f9109b
この使い方のままだと、型がBigNumber型のままで使いにくいことがあるので、
a = BigNumber(0.1).plus(0.2).toPrecision();
のように、toPrecisionを使うとよいようです。
あと、HTML上で使うため、CDNを使いたいときは、GitHub
https://github.com/MikeMcl/bignumber.js/
にあるように、下記用にインポートしましょう。
<script src='https://cdn.jsdelivr.net/npm/bignumber.js@9.1.0/bignumber.min.js'></script>
以上です。
また、お会いしましょう。