JavaScript时间处理

JavaScript时间处理

上周用Thinkjs+Vue+Boostrap+Mysql做了一个账单分析系统,功能比较单一,添加售出的商品,折扣价,销售价,货源价,销售月份。

今天运行看看却发现不知道哪个时间销售出了物件还莫名赚了钱,不爽我要看看究竟是哪一天哪个时间赚了,可是后台没这个功能呢,用nodejs还真没处理过,Java处理过,C#处理过,Php也简单写过(一句话搞定),都是比较麻烦的。翻翻资料一看,js还真简单。

1.时间=>时间戳

数据库真正存的还是整型的不大于11位的数字,总体上有三种解决办法

(1)Date.parse(new Date())

这种只是精确到了秒13位后3位为000,不过这种在要求不是很严格的情况下已经够用了除以1000存进数据库

(2)parseInt(Date.now())

这种就比较准确了精确到毫秒,不过业务不要求那么准确貌似也没什么卵用,推荐用这个吧,不用创建什么对象(parseInt(Date.now()/1000))

(3)(new Date()).valueOf()和new Date().getTime()

这两种就不用说啦,基于对象的,从深层次说还是走了不少弯路的.创建对象->获取字符串日期->字符串转换时间戳,一般情况下还是第二种比较常用

2.时间戳=>时间

前后端其实可以引入moment.js直接调用API就轻松的转化了,用js也是可以的。

new Date(时间戳) hiahia 但是时间格式不是你想要的,那就自己动手写方法喽。

function timetrans(date){

var date = new Date(date*1000);//如果date为13位不需要乘1000

var Y = date.getFullYear() + '-'; var M = (date.getMonth()+1

var D = (date.getDate()

var h = (date.getHours()

var m = (date.getMinutes()

var s = (date.getSeconds()

return Y+M+D+h+m+s;

}

[ 习惯了没有你的孤独 ]

好了,基本就搞定了。洗洗睡

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180318G1CZZE00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券