Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Firestore以秒和纳秒为单位保存时间戳_Javascript - Fatal编程技术网

Javascript Firestore以秒和纳秒为单位保存时间戳

Javascript Firestore以秒和纳秒为单位保存时间戳,javascript,Javascript,在拦截firestore中新对象创建的函数中,我需要保存时间戳。但我不想以这种格式保存此值: 2019年1月17日星期四17:10:45 GMT+0000(UTC) 但分为秒和纳秒。此结果来自此函数: createdAt: new Date() firebase.database.ServerValue.TIMESTAMP 或其他不可用的结果,如: .sv:“时间戳” 从该函数: createdAt: new Date() firebase.database.ServerValue.TIM

在拦截firestore中新对象创建的函数中,我需要保存时间戳。但我不想以这种格式保存此值:

2019年1月17日星期四17:10:45 GMT+0000(UTC)

但分为秒和纳秒。此结果来自此函数:

createdAt: new Date()
firebase.database.ServerValue.TIMESTAMP
或其他不可用的结果,如:

.sv:“时间戳”

从该函数:

createdAt: new Date()
firebase.database.ServerValue.TIMESTAMP

我需要使用什么来获得秒和纳秒?

如果您想要的是以毫秒为单位的时间戳,正确的方法是:

createdAt: Date.now()
如果您确实想要更高的精度,有:

window.performance.now()
它给出页面加载后的毫秒数,并且:

window.performance.timeOrigin
在页面加载时以毫秒为单位给出时间戳,因此您可以获得纳秒,如下所示:

createdAt: Math.round((window.performance.timeOrigin+window.performance.now())*1000000)

“秒和纳秒”的预期格式是什么?如何(以及为什么)获得纳秒
Date.now()*1000
显然不是很准确。无论如何也不太可能,但是。。。我对格式问题很好奇,为什么我们要显示“秒”和“纳秒”,并且完全通过传递“毫秒”和“微秒”我想OP的意思是毫秒:P这就是当你不注意科学课上的人时会发生的情况。我只想知道是否有方法可以保持最大的精度,以及在不编写自定义方法的情况下选择位数