我使用moment.js作为时间格式。所以现在我得到UTC时间(从服务器获取时间,找到其他时区),所以我想转换为ISO 8601.我能够将单值UTC转换为ISO。但是我无法将整个数组转换为ISO格式。
var time= [11:30,11:50,12:50,22:30,23:10,2:20,4:30,8:50,9:10]
我希望每个值都转换为ISO格式。
答案 0 :(得分:1)
您可以遍历您的数组,使用moment(String, String)
解析您的输入,然后使用toISOString()
或format()
。
这是一个实时样本:
var time= ['11:30','11:50','12:50','22:30','23:10','2:20','4:30','8:50','9:10'];
var result = time.map(elem => moment.utc(elem, 'HH:mm').toISOString());
console.log(result);
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.18.1/moment.min.js"></script>
答案 1 :(得分:0)
如何迭代这些值并替换它们?
for (i = 0; i < time.length; i++) {
time[i] = moment(time[i], 'hh:mm');
}
答案 2 :(得分:0)
使用map()
var time = ["11:30","11:50","12:50","22:30"]
.map(el => moment(el, 'hh:mm'));
答案 3 :(得分:-1)
您可以使用map转换每个值:
let converted = time.map(t => t.toISOString());
t.toISOString() - 例如,您可以添加任何逻辑并返回转换时间。