在计算年龄差异时我正在警惕
这是我的代码 http://plnkr.co/edit/1wIvVISmgEqcRNnAD971?p=preview
moment.min.js:1弃用警告:提供的值不在 公认的RFC2822或ISO格式。瞬间的建设回落到js Date(),在所有浏览器和所有版本中都不可靠。非 不建议使用RFC2822 / ISO日期格式, 即将发布的主要版本。请参阅 http://momentjs.com/guides/#/warnings/js-date/了解更多信息。 参数:[0] _isAMomentObject:true,_isUTC:false,_useUTC:false, _l:未定义,_i:1983年2月9日,_f:未定义,_strict:未定义,_locale:[object Object]错误 在Function.createFromInputFallback(https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.22.2/moment.min.js:1:3368) 在Yt(https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.22.2/moment.min.js:1:21353) 在Ot(https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.22.2/moment.min.js:1:22064) 在Tt(https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.22.2/moment.min.js:1:22146) 在Nt(https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.22.2/moment.min.js:1:24464) 在M.ln.diff(https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.22.2/moment.min.js:1:29987) 在对象。 (http://run.plnkr.co/rVHCD6iVYofYv9Th/app.js:8:22) 在Object.invoke(https://code.angularjs.org/1.4.12/angular.js:4570:17) 在extend.instance(https://code.angularjs.org/1.4.12/angular.js:9435:34) 在nodeLinkFn(https://code.angularjs.org/1.4.12/angular.js:8540:34
我就是这样
let DOB= "09-Feb-1983"
console.log(moment(DOB, 'DD-MMM-YYYY', true).isValid())
console.log(moment().format('DD-MMM-YYYY'));
console.log(moment().diff('09-Feb-1983', 'years'))
如何删除此警告,我已经指定了格式
答案 0 :(得分:2)
您可以将字符串转换为一小段时间,然后再将其传递到diff()
函数中。
尝试这样
let DOB= "09-Feb-1983"
console.log(moment(DOB, 'DD-MMM-YYYY', true).isValid())
console.log(moment().format('DD-MMM-YYYY'));
console.log(moment().diff(moment('09-Feb-1983', 'DD-MMM-YYYY'), 'years'));