代码不起作用(jsfiddle)
它返回false
var m1 = moment("Lunedì, 14 Aprile 2014 07:40");
console.log(
m1.isSame("14 Aprile 2014", 'day')
);
在chrome中它返回true。
一些建议?
答案 0 :(得分:3)
没有任何格式提示,唯一的格式moment.js将尝试自行解析ISO-8601标准。否则,它需要格式化提示,或者只是让浏览器尝试解析它,就像使用Date
对象一样 - 这是高度特定于实现的。
警告浏览器对此的支持不一致。因为没有关于应该支持哪种格式的规范,所以在某些浏览器中有效的功能在其他浏览器中不起作用。
要获得更一致的结果,您应该使用String + Format。
有一个例外:Moment.js会检测您是否正在使用ISO-8601字符串并在没有格式字符串的情况下正确解析。
因此,如果您希望文本采用特定格式,那么您应该使用格式提示:
moment.lang("it")
moment("Lunedì, 14 Aprile 2014 07:40","LLLL")
"LLLL"
格式是该语言的本地化格式的“长”形式 - 在这种情况下为意大利语。您还可以提供特定的格式字符串,例如:
moment.lang("it")
moment("Lunedì, 14 Aprile 2014 07:40","dddd, DD MMMM YY HH:mm")
答案 1 :(得分:0)
工作正常
m1.isSame(moment("14 Aprile 2014", 'DD MMMM YYYY', 'it').format(), 'day')
非常感谢