我試圖根據出生日期計算年齡,但出於某種原因它正在正常工作。角度:計算出生日期的年齡基數
這裏是角代碼:
數據從http請求到來。
$scope.dob = data.dob;
樣本數據 - 02-01-1990。 (DD-MM-YYYY)。
$scope.calculateAge = function calculateAge(birthday) { // birthday is a date
var ageDifMs = Date.now() - birthday.getTime();
var ageDate = new Date(ageDifMs); // miliseconds from epoch
return Math.abs(ageDate.getUTCFullYear() - 1970);
}
這就是我如何使用。
{{ calculateAge(dob) }}
請指教。
變種d =新的日期( 「1990年2月1日」)不解析。你過去了嗎?這個問題我不清楚。 –
「它失敗」是什麼意思?你有錯誤嗎?你得到一個不正確的結果?還有其他事情發生嗎?你的問題並不完全清楚。 – Claies
由於您的birthDate爲「dd-mm-yyyy」格式,而Date()類不理解此格式,因此它失敗或不會產生期望的結果。所以日期差異不會輸出預期的結果。即birthday.getTime()將輸入日期評估爲1990年2月1日(mm-dd-yyyy)格式。嘗試使用moment.js將日期轉換爲通用基本形式。 – RRM