【问题标题】:difference between moment js functions and javascript date functions [closed]时刻js函数和javascript日期函数之间的区别[关闭]
【发布时间】:2015-04-13 13:33:03
【问题描述】:

实际上我正在考虑在我的新项目中使用moment.js。因为我的新项目是一个员工工作表应用程序。

我阅读了moment.js 文件。

我们可以通过moment.js中的以下代码获取当前日期

moment().valueOf();

我们可以通过javascript获取当前日期

new Date()

两者都给出相同的结果。以相同的速度(所以没有性能问题)

还有formattingget 方法和set 方法已经有javascript。那我为什么要去moment.js?

请给我一些关于差异的解释。让我知道哪一个最适合我的新项目。

【问题讨论】:

    标签: javascript jquery momentjs


    【解决方案1】:

    Moment.js

    用于解析、验证、操作和格式化日期的轻量级 JavaScript 日期库。

    我们使用 Moment.js 的原因 - 今天的许多网络应用程序,尤其是社交应用程序,都处理时间的概念。它们通常用于对事件或帖子进行排序,或标记某事发生的时刻。您可以想到您的 Twitter 时间线或 GitHub 新闻提要。 JavaScript 有一个 Date 对象,您可以使用它来操作日期,但它通常不具备您的 Web 应用程序所需的一切

    Moment.js 库不仅可以解析字符串中的日期,还可以用于验证、操作和格式化日期。它支持国际化,这对日期非常重要,也支持人性化的格式,如“上周五 9:48”。

    这些当然都是好事,但是今天的重点是日期解析,所以让我们来看看它是如何工作的。

    Moment.js 为 Date 对象创建一个包装器,而不是扩展它。要引用包装对象,只需调用 moment() getter 函数。 Moment 原型通过moment.fn 属性公开,因此如果您愿意,可以向其中添加自己的函数。

    礼貌

    Managing Dates and Times Using Moment.js

    A Roundup of Popular JavaScript Date Parsing Libraries: Moment.js

    【讨论】:

    【解决方案2】:

    Moment.js 在您想要操作Dates 时很方便。

    下面给出一个例子

    moment()
      .add(7, 'days')
      .subtract(1, 'months')
      .year(2009)
      .hours(0)
      .minutes(0)
      .seconds(0);
    
    moment().endOf('day').fromNow();  
    

    但如果您只需要格式化、获取和设置,那么您可能不需要库。

    【讨论】:

      【解决方案3】:

      这取决于你想要做什么。

      MomentJS 提供了一个 API,它几乎包装了原生 Date 对象,这就是你调用 .valueOf 的原因。 new Date 只是为您提供本机 Date 对象(并使用 moment 操作它,您需要将其传递给它的构造函数)。

      我会说一般的经验法则:

      • 如果您要在网站上创建日期或用作某种 UI 元素,请使用 Moment。
      • 如果您将日期存储回服务层,请使用日期。
      • 如果您正在使用操纵日期的方法,请使用 Moment;如果需要将其传递给另一个服务层,请调用 .valueOf 并保存它。

      Moment 非常适合 UX,但不是“标准”(因此不适合序列化/存储)。

      【讨论】:

        【解决方案4】:

        显然,我建议使用moment.js。它是最流行的日期解析库之一。

        moment.js 有多种内置函数,易于使用。

        这将节省您的开发时间。

        操作和解析日期非常容易。

        【讨论】:

          【解决方案5】:

          Moment.js 对加、减、高级格式化、查找两天之间的差异有很好的支持。它还具有国际化支持,因此您可以非常轻松地转换为任何语言。

          【讨论】:

            【解决方案6】:

            就像任何库的目的都是为了帮助某些东西并使其易于工作。 momemt.js 使处理日期变得无痛。

            考虑到时区和格式因素等来处理日期非常困难,但 moment.js 让处理日期变得轻而易举。

            阅读更多here

            【讨论】:

              猜你喜欢
              • 2020-06-04
              • 1970-01-01
              • 2018-03-15
              • 1970-01-01
              • 1970-01-01
              • 2011-01-13
              • 1970-01-01
              • 2011-09-20
              • 1970-01-01
              相关资源
              最近更新 更多