[英]How to convert timestamp value to specific time format using react native?
在我的场景中,我需要在 react native 中将timestamp
值转换为特定的时间格式。 我厌倦了下面的代码,但无法获得准确的格式 output。 如何实现?
var dateTime = new Date(23456789 * 1000);
this.setState({DateTime:('0' + dateTime.getUTCDate()).slice(-2) +
'/' + ('0' + dateTime.getUTCMonth()).slice(-2) +
'/' + dateTime.getUTCFullYear() +
'' + ('0' + dateTime.getUTCHours()).slice(-2)
});
确切的 output 预计: Wed, 2/01/2000 - 1.10 AM
您可以使用以下转换
var timestemp = new Date( 23456789000 );
var formatted = timestemp.format("dd/mm/yyyy hh:MM:ss");
你可以像这样得到日期、日期、年份和月份
var day = timestemp.getDay();
var date = timestemp.getDate();
var month = timestemp.getMonth() + 1;
var year = timestemp.getFullYear();
更新
var t = new Date(23456789000);
var formatted = ('0' + t.getDate()).slice(-2)
+ '/' + ('0' + t.getMonth()).slice(-2)
+ '/' + (t.getFullYear())
+ ' ' + ('0' + t.getHours()).slice(-2);
Output
29/08/1970 17
更新:
var t = new Date(1589343013000);
var hours = t.getHours();
var minutes = t.getMinutes();
var newformat = t.getHours() >= 12 ? 'PM' : 'AM';
// Find current hour in AM-PM Format
hours = hours % 12;
// To display "0" as "12"
hours = hours ? hours : 12;
minutes = minutes < 10 ? '0' + minutes : minutes;
var formatted =
(t.toString().split(' ')[0])
+ ', ' +('0' + t.getDate()).slice(-2)
+ '/' + ('0' + (t.getMonth() + 1) ).slice(-2)
+ '/' + (t.getFullYear())
+ ' - ' + ('0' + t.getHours()).slice(-2)
+ ':' + ('0' + t.getMinutes()).slice(-2)
+ ' ' + newformat;
Output:
Wed, 13/05/2020 - 09:40 AM
我试过这个 { ${new Date(23456789000).toLocaleDateString('en-GB')}
},在 output 中得到了 29/09/1970。 我使用从数据库中获取的日期值而不是时间戳,例如 { ${new Date(myobject.myfield).toLocaleDateString('en-GB')}
} 这也有效,我在 React 中定义了与我的数据库 object 匹配的接口.
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.