zhangsanshi / issue-blog

It's a blog rather than issue
0 stars 0 forks source link

梳理时间戳 #2

Open zhangsanshi opened 8 years ago

zhangsanshi commented 8 years ago

主要由一个问题引发的

new Date(0);
new Date('0');

执行一下会发现两个并不一样,数字的时间戳,执行出来是正常的结果,但是字符串的并不是想要的结果,很显然,对于字符串和数字,js有不同的处理办法,实际上字符串的先会去date.parse。后端传递的时间戳看起来并不是那么规范,因为按照时间戳的定义就应该是number类型的,而不是string。 同样的还有一个问题,后端对于默认不填的时间给0,后端数据库统一存储时间戳,在这里就更有问题了,0是歧义的,如果一个人选择了1970-01-01,那他原本就是0,而不是默认是0,目前后端已经改成了默认null... 再一点,后端传过来的时间戳都是unix时间戳,每次处理的时候都先*1000 其实前两条都应该是约定好的,现在前端先处理掉