当前位置: 首页 > news >正文

moment.js根据时间戳计算与当前时间相差多少天

Moment旨在在浏览器和Node.js中工作。

所有代码都应该在这两种环境中都有效,并且所有单元测试都在这两种环境中运行。

目前,以下浏览器用于ci系统:Windows XP上的Chrome,Windows 7上的IE 8,9和10,Windows 10上的IE 11,Linux上的最新Firefox以及OSX 10.8和10.11上的最新Safari。

如果您想尝试下面的示例代码,只需打开浏览器的控制台并输入它们即可。

Node.js

npm install moment
var moment = require('moment');
moment().format();

注意:2.4.0不推荐使用全局导出的时刻对象。它将在下一个主要版本中删除

浏览器

<script src="moment.js"></script>
<script>
    moment().format();
</script>

Moment.js可以在cdnjs.com 和 jsDelivr.

Bower

bower

bower install --save moment

值得注意的文件是moment.js, locale/*.jsmin/moment-with-locales.js.

Require.js

如果您计划使用Require.js,我们强烈建议您阅读 此内容。也升级到2.14.0或更高版本以获得最佳体验。

首先,您可能需要通过bower或node_modules或其他将moment.js与locales目录放在基本文件夹中的其他内容。然后你应该使用像adapt-pkg-main这样的工具 ,或者手动使用packages config.

解析

Date.prototypeMoment.js 不是修改本机,而是为Date对象创建一个包装器。要获取此包装器对象,只需moment()使用其中一种受支持的输入类型进行调用。

Moment原型是通过暴露moment.fn。如果你想添加自己的功能,那就是你要放置它们的地方。

为便于参考,Moment.prototype将在文档中引用任何方法moment#method。所以Moment.prototype.format == moment.fn.format == moment#format.

请阅读:

  • moment(...)是本地模式。模糊输入(无偏移)假定为本地时间。明确的输入(带偏移)调整为当地时间。
  • moment.utc(...)是utc模式。模糊输入假定为UTC。明确的输入调整为UTC。
  • moment.parseZone()保持输入区域的传入。如果输入不明确,则与本地模式相同。
  • moment.tz(...)使用moment-timezone插件可以解析特定时区的输入。

请记住,时区和时区偏移是两个不同的事情。偏移-08:00并不一定意味着您处于美国太平洋时区。


 

 

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
    <script src="https://cdn.staticfile.org/moment.js/2.29.1/moment.js"></script>
  </head>
  <body>
    <div class="m-single-play-info-playing"></div>
    <script>
      // let startDate = moment().utc().startOf('days').toISOString().valueOf()
      //今日凌晨的时间戳
      let startDate2 = moment().startOf('days').valueOf()
      let startDate3 = moment(startDate2).format('YYYY-MM-DD HH:mm:ss')
      //明日凌晨的时间戳
      let startDate4 = startDate2 + 60 * 60 * 24 * 1000
      let startDate5 = moment(startDate4).format('YYYY-MM-DD HH:mm:ss')
      console.log(startDate2, startDate3, startDate4, startDate5)

      let arr = [
        '1675316708176',
        '1675244950312',
        '1675075673685',
        '1675075454893',
        '1675075452233',
        '1675075449093',
        '1675075244558',
        '1675075218296',
        '1675075210765',
        '1675075207381',
      ]

      const fun = (arr) => {
        return arr.map((item) => {
          let createTime = item
          const interval = (startDate4 - createTime) / 1000
          let behaviorDate = ''
          if (interval < 60 * 60 * 24) {
            behaviorDate = '今天'
          } else if (interval < 60 * 60 * 24 * 2) {
            behaviorDate = '昨天'
          } else if (interval < 60 * 60 * 24 * 7) {
            let tempTime = Math.floor(interval / (60 * 60 * 24))
            behaviorDate = `${tempTime}天前`
          } else if (interval < 60 * 60 * 24 * 365) {
            behaviorDate = moment(createTime - 0).format('MM-DD')
          } else {
            behaviorDate = moment(createTime - 0).format('YYYY-MM-DD')
          }
          let dayCount = Math.floor(interval / (60 * 60 * 24))
          return {
            createTime,
            behaviorDate,
            dayCount,
          }
        })
      }
      let result = fun(arr)
      console.log(result)
    </script>
  </body>
</html>

相关文章:

  • VS2017编译gsf/surf/mbio —E0020 未定义标识符 “F_OK“
  • 【完美解决】Github action报错remote: Write access to repository not granted.
  • vulnhub之PRIME (2021): 2
  • 【C++修炼之路】C++入门(下)
  • 【Android Studio】【Flutter】Android Studio下Flutter环境搭建记录
  • Vue3 中使用组合式API替换mixins,达到代码复用并解决隐患
  • 规则引擎-drools-3.3-drl文件构成-rule部分-条件Condition
  • 企业怎么能上百度百科词条,创建百科方法
  • 3-1多线程-线程池
  • Linux-远程管理命令
  • mysql:数据库调优策略,sql调优
  • HighCharts结构及详细配置(中文对比)
  • 面试之 Python 框架 Flask、Django、DRF
  • 2023年FOF/MOM基金研究报告
  • 在CentOS-6.9配置apache服务(1)---基于个人主页的身份验证
  • End-to-End Entity Resolution for Big Data: A Survey Matching部分学习笔记
  • 自动驾驶感知——红外传感器
  • stream操作常用API 示例详解
  • IB EE 学习干货,从选学科/课题/写稿/对稿/交稿几个方面入手分享
  • 集成学习面试常见问题
  • 电加热油锅炉工作原理_电加热导油
  • 大型电蒸汽锅炉_工业电阻炉
  • 燃气蒸汽锅炉的分类_大连生物质蒸汽锅炉
  • 天津市维修锅炉_锅炉汽化处理方法
  • 蒸汽汽锅炉厂家_延安锅炉厂家
  • 山西热水锅炉厂家_酒店热水 锅炉
  • 蒸汽锅炉生产厂家_燃油蒸汽发生器
  • 燃煤锅炉烧热水_张家口 淘汰取缔燃煤锅炉
  • 生物质锅炉_炉
  • 锅炉天然气_天燃气热风炉