下記記事を基に、経過日数を計算する方法は分かったのですが、
経過年数を計算する場合はどのようにすればよろしいですか?
【フォームブリッジ】経過日数の計算について
下記に記入しているコードにある
86400000は日数を計算するためのもので、
年数であるとうるう年もあるので単純に365と割るわけにもいかないので、
サンプルコードをいただければ幸いです。
よろしくお願いいたします。
(function() {
“use strict”;
const start = ‘start’;
const period = ‘period’;
fb.events.fields[start].changed.push(function (state) {
const now = new Date();
state.record[period].value = Math.floor((now - state.record[start].value) / 86400000);
return state;
})
})();
お世話になっております。
トヨクモの友利と申します。
上記の
Math.floor((now - state.record[start].value) / 86400000)
の部分を
now.getFullYear() - state.record[start].value.getFullYear()
とすることで経過年数を取得できます。
友利様
お世話になっております。
こちらのコードで実装していたのですが、
よく見ると正しく年齢が計算されておりませんでした。
具体的にはこのコメントを書く時点でまだ30歳の誕生日を迎えていない(29歳が正しい)
1989/12/1を入力したところ、
数値フィールドが30と表示されてしまいます。
年が同じ1989であればすべて30と計算されて、
1990であればすべて29歳と計算されました。
こちらはどのようにすれば正しく計算されるでしょうか?
大変お手数をおかけいたしますが、
ご教示のほどよろしくお願いいたします。
system
(system)
クローズされました:
5
このトピックはベストアンサーに選ばれた返信から 3 日が経過したので自動的にクローズされました。新たに返信することはできません。