Moment从版本2.1.0到2.13.0是否有重大变化?
我刚刚继承了使用旧版本的代码库,并想知道从2.1升级到2.13是否会出现问题。不幸的是,我们的网络应用程序没有JavaScript单元测试。
答案 0 :(得分:0)
我可以说,总的来说,时刻跟在SemVer之后,因此API没有中断。
但是,您可能会发现一些行为更改,因为多年来已修复了各种错误。有些人认为它是一个突破性变化"当他们依赖于所展示的特定错误以及后来修复错误时,或者当某个函数被改进以在语义上更正确时。
例如,moment.utc().format()
返回的字符串过去包含+00:00
的偏移量,现在返回Z
。这更符合ISO8601和RFC3339规范,因此之前的实现被认为是一个错误,并且已经解决了。大多数人都对这种变化很好,因为所有现代解析器都应该接受这两种形式,但是有些人抱怨这破坏了他们的代码,因为他们通过字符串操作手动解析结果,并期望偏移的数值。我们不认为这是一个重大改变,因为API没有改变,并且结果字符串在更改之前和之后都符合规范 - 它现在在语义上更准确。
有一些其他类似的其他更改,它们都在the changelog中引用。如果您编辑问题以显示您正在使用的时刻功能,那么我可能会提供更多详细信息。