関連レコード一覧の計算について

いつもお世話になっています。

下記参考サイト通りに関連レコード一覧をjavascriptで計算する方法を試し、
計算自体は動作しているのですが、数値に少数がある際に正しく計算されないので、
原因と解決方法をご教授いただければ幸いです。

 

■目的

関連レコード一覧テーブルの計算結果をフィールドに表示したいが、少数の計算ができない。

 

■詳細

○kintone上の画面

○使用しているjavascript

(function () {
kintone.events.on(['app.record.edit.show', 'app.record.create.change.AAA2'], function (event) {
constappId = kintone.app.getRelatedRecordsTargetAppId("BBB");
constquery = 'AAA1="' + event.record['AAA2'].value + '"';
constbody = {
'app': appId,
'query': query
};
kintone.api(kintone.api.url('/k/v1/records', true), 'GET', body, function (resp) {
var sum = 0;
resp.records.forEach((record) => {
sum += record['CCC'].value ? parseInt(record['CCC'].value) : 0;
});
event.record['DDD'].value = sum;
kintone.app.record.set(event);
});
return event;
});
})();

■参考サイト
https://fastsystem.funai.site/relatedrecords-sum/

よろしくお願いいたします。

JSの問題となりますが、parseIntは入力値の数値を整数に変換する関数です。

https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/parseInt

そのため、小数部分が切り捨てられてしまっています。

代わりに、parseFloatかNumberを使うことをおすすめします。

 

また、本題とは少々離れますが、constとvar、アロー関数とfunctionが混在しているのが多少気になりました。

現在、ES6以降の記述で問題ないですので、constとアロー関数に統一されるのがよろしいかと思います!

ご回答ありがとうございます。上記の関数を試したところ無事解決できました!

また、記述についても拙い部分を教えていただけて勉強になりました!

(返信が遅くなって申し訳ありません、、)