如何从javascript对象中删除时间
How to remove time from object in javascript?
我试图从我的对象属性之一删除时间。实际上,我用:index检查时间戳是否存在于属性值中。实际上我有这个
输入[
{
"S": "Charge Interest Against Past Due Account",
"C": "Mon Apr 13 10:38:05 GMT 2015"
},
{
"S": "Charge Interest Against Past Due Account",
"C": "Mon Apr 13 10:35:05 GMT 2015"
}
]
输出[
{
"S": "Charge Interest Against Past Due Account",
"C": "Mon Apr 13 2015"
},
{
"S": "Charge Interest Against Past Due Account",
"C": "Mon Apr 13 2015"
}
]
Javascript var object = ary.map(function(o){
var result={}
// console.log(o)
for(i in o){
console.log(i+":"+o[i]) ;
if(o[i].indexOf(":")!=-1){
console.log("timestam present")
}
}
})
原始数组应保持不变,结果应在单独的数组中捕获。
var ary=[
{
"S": "Charge Interest Against Past Due Account",
"C": "Mon Apr 13 10:38:05 GMT 2015"
},
{
"S": "Charge Interest Against Past Due Account",
"C": "Mon Apr 13 10:35:05 GMT 2015"
}]
ary.map(function(o){
var d = new Date(o.C);
o.C = d.toDateString();
})
console.dir(ary)
C: "Mon Apr 13 2015"
S: "Charge Interest Against Past Due Account"
C: "Mon Apr 13 2015"
S: "Charge Interest Against Past Due Account"
保留原始对象,并在其他对象中获取结果,使用以下代码:
var ary=[
{
"S": "Charge Interest Against Past Due Account",
"C": "Mon Apr 13 10:38:05 GMT 2015"
},
{
"S": "Charge Interest Against Past Due Account",
"C": "Mon Apr 13 10:35:05 GMT 2015"
}]
var a = ary.map(function(o){
var result = {};
var d = new Date(o.C);
result.S = o.S;
result.C = d.toDateString();
return result;
})
console.dir(a)
最好的方法是将日期解析为date对象,然后重新格式化。您可以按照自己的喜好设置格式,有或没有时间。有许多库可用于格式化日期。你说你使用的是jQuery,有一个日期格式的插件。
我不建议您尝试将字符串分成片段。有许多日期格式(您不指定该日期来自何处),并且您的解决方案可以很容易地在将来停止工作。
您可以用空格分隔C
属性,然后重新连接您想要保留的部分。试试这个:
for (var i = 0; i < ary.length; i++) {
var dateValues = ary[i].C.split(' ');
ary[i].C = dateValues[0] + ' ' + dateValues[1] + ' ' + dateValues[2] + ' ' + dateValues[5]
};
更新小提琴
没有丑陋的字符串连接的替代方案:
for (var i = 0; i < ary.length; i++) {
var dateValues = ary[i].C.split(' ')
dateValues.splice(3, 2);
ary[i].C = dateValues.join(' ');
};
var ary = [
{
"S": "Charge Interest Against Past Due Account",
"C": "Mon Apr 13 10:38:05 GMT 2015"
},
{
"S": "Charge Interest Against Past Due Account",
"C": "Mon Apr 13 10:35:05 GMT 2015"
}];
for (var i = 0; i < ary.length; i++) {
ary[i].C = ary[i].C.replace(/'d+:'d+:'d+'s*GMT's*/g, '');
}
console.info(ary);
相关文章:
- 从角度日期函数中删除时间
- 删除上午、下午拖尾时间的最佳方式
- 如何从日期字符串中删除时间
- 从值为零angularjs的时间中删除分钟部分
- Javascript html5 视频在特定时间添加/删除类
- 如何使用 SetTimeout,根据动态追加时间删除动态追加的元素
- 删除不需要的javascript和css是否包括减轻网页加载时间
- 如何在明喻时间轴中删除乐队中的日期
- 如何从时刻.JS日期中删除时间
- 如何从此代码中删除时间
- 从字符串中删除时间HH:mm
- 从数据表中的日期字段中删除时间戳
- 使用JS正则表达式删除时间戳
- JQuery中删除时间戳的问题
- 如何从javascript对象中删除时间
- 从日期对象(javascript)中删除时间
- 我如何从日期删除时间与Moment.js
- 正在从Jquery时间选择器插件中删除时间并添加“新建”
- 从Google Sheets检索的日期中删除时间和时区
- 如何从日期中删除时间从JavaScript拉记录从SQL