Hai, ini lebih merupakan pertanyaan daripada masalah tetapi ini dia.
Saya ingin menggunakan momen untuk memeriksa apakah seseorang berusia lebih dari 18 tahun. Apa cara terbaik untuk melakukan ini? Karena jika saya menggunakan fungsi .fromNow() saya akan mendapatkan 18 tahun jika orang tersebut memiliki lebih dari 17 setengah.
Anda dapat menggunakan sesuatu seperti birthday.diff(moment(), 'years')
untuk ini, di mana birthday
adalah momen ulang tahun orang tersebut.
Oke itu bekerja. Terima kasih banyak.
const age = moment().diff(birthday, 'years');
const isLegal = (age >= 18);
Math.abs(birthday.diff(moment(), 'years'))
dengan Math.abs Anda mengubah hasil ini menjadi bilangan positif
Anda dapat menggunakan sesuatu seperti
birthday.diff(moment(), 'years')
untuk ini, di manabirthday
adalah momen ulang tahun orang tersebut.
ini berfungsi tetapi memberikan peringatan di konsol, adakah yang tahu mengapa?
Deprecation warning: value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are discouraged and will be removed in an upcoming major release. Please refer to http://momentjs.com/guides/#/warnings/js-date/ for more info.
Arguments:
[0] _isAMomentObject: true, _isUTC: false, _useUTC: false, _l: undefined, _i: Fri Sep 27 2019 00:00:00 GMT+0100 (Western European Summer Time), _f: undefined, _strict: undefined, _locale: [object Object]
Error
at Function.eval [as createFromInputFallback] (webpack-internal:///./node_modules/moment/moment.js:319:98)
at configFromString (webpack-internal:///./node_modules/moment/moment.js:2384:15)
at configFromInput (webpack-internal:///./node_modules/moment/moment.js:2610:13)
at prepareConfig (webpack-internal:///./node_modules/moment/moment.js:2593:13)
at createFromConfig (webpack-internal:///./node_modules/moment/moment.js:2560:44)
at createLocalOrUTC (webpack-internal:///./node_modules/moment/moment.js:2647:16)
at createLocal (webpack-internal:///./node_modules/moment/moment.js:2651:16)
at hooks (webpack-internal:///./node_modules/moment/moment.js:11:29)
at VueComponent.Singup (webpack-internal:///./node_modules/cache-loader/dist/cjs.js?!./node_modules/babel-loader/lib/index.js!./node_modules/cache-loader/dist/cjs.js?!./node_modules/vue-loader/lib/index.js?!./src/views/Singup.vue?vue&type=script&lang=js&:95:63)
at invokeWithErrorHandling (webpack-internal:///./node_modules/vue/dist/vue.runtime.esm.js:1853:26)
@josebedoya Itu tidak perlu jika Anda baru saja menukar perhitungan relatif seperti yang dilakukan @eballeste :
moment().diff(birthdate, 'years')
Masih tidak berfungsi dengan benar jika orang tersebut baru saja (kurang dari sebulan yang lalu) berulang tahun.
Masih tidak berfungsi dengan benar jika orang tersebut baru saja (kurang dari sebulan yang lalu) berulang tahun.
moment('2020-05-07').diff(moment('2002-05-06'), 'years')
mengembalikan 18
Komentar yang paling membantu
Anda dapat menggunakan sesuatu seperti
birthday.diff(moment(), 'years')
untuk ini, di manabirthday
adalah momen ulang tahun orang tersebut.