gpt4 book ai didi

javascript - 我如何解决 moment.js 中的可变性问题?

转载 作者:IT王子 更新时间:2023-10-29 02:44:59 27 4
gpt4 key购买 nike

我遇到了一个问题,我必须存储一个 moment 对象的初始值,但我在阻止我的变量随原始对象一起改变时遇到了一些麻烦。

不幸的是 Object.freeze() 不起作用,因为当我尝试格式化时 moment.js 返回一个 Invalid date 错误。

最佳答案

NPM 上有一个名为 frozen-moment 的 Moment.js 插件- 您可以使用 moment().freeze() 代替 Object.freeze(moment())

否则,普通的 Moment.js 有一个 clone 方法可以帮助您避免可变性问题,因此您可以这样做:

var a = moment(),
b = a.clone(); // or moment(a)

更新:

我写这个答案已经两年了。在此期间,另一个用于处理日期的库浮出水面并获得了很大的关注:https://date-fns.org/

这个库默认是不可变的,遵循模块化的功能架构,这意味着它更适合 tree shaking 和客户端捆绑。如果你正在从事一个在客户端广泛使用 Webpack 的项目,并且发现 Moment.js 给你的构建带来了麻烦,或者即使 Moment.js 的可变性让你很头疼,那么你应该试试 date-fns

关于javascript - 我如何解决 moment.js 中的可变性问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30979178/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com