如何更改表达式中的“结束日期”和“开始日期”
how to change the to and from date from expression?
>我正在从服务器获取json数据,其中我得到的日期表达式为"t+1","t+2","t-1"。t 代表当前或系统日期。我需要更改这些表达式,如果t
今天是日期 2016-03-14。那么t-1
2016-03-13.我们可以在javascript中更改这个表达式吗
这是我得到的对象输入
[
{
"column": {
"name": "a",
"userId": "dipu"
},
"deal": {
"dealNumbers": [],
"fromDateExpression": {
"expression": "t-1",
"date": "2016-03-08"
},
"toDateExpression": {
"expression": "t",
"date": "2016-03-08"
}
}
},
{
"column": {
"name": "bb_test",
"userId": "dipu"
},
"deal": {
"dealNumbers": [
"HH_2282825"
],
"fromDateExpression": {
"expression": "t+1",
"date": "2016-03-09"
},
"toDateExpression": {
"expression": "t+7",
"date": "2016-03-17"
}
}
},
{
"column": {
"name": "my view",
"userId": "dipu",
"associatedWithAView": false
},
"deal": {
"dealNumbers": [
"HH_2282759"
],
"fromDateExpression": {
"expression": "t+2",
"date": "2016-02-19"
},
"toDateExpression": {
"expression": "t+3",
"date": "2016-02-19"
}
}
}
]
我需要转换 json 数组.我这样尝试
https://jsfiddle.net/e4nt1doz/1/
function changeDatefromExpress(expr){
if(expr=="t"){
var today = new Date();
var dd = today.getDate();
var mm = today.getMonth()+1; //January is 0!
var yyyy = today.getFullYear();
return yyyy-mm-dd
}else(expr=="t+1"){
}
}
预期输出是这样的
[
{
"column": {
"name": "a",
"userId": "dipu"
},
"deal": {
"dealNumbers": [],
"fromDateExpression": {
"expression": "t-1",
"date": "2016-03-13"
},
"toDateExpression": {
"expression": "t",
"date": "2016-03-14"
}
}
},
{
"column": {
"name": "bb_test",
"userId": "dipu"
},
"deal": {
"dealNumbers": [
"HH_2282825"
],
"fromDateExpression": {
"expression": "t+1",
"date": "2016-03-15"
},
"toDateExpression": {
"expression": "t+7",
"date": "2016-03-21"
}
}
},
{
"column": {
"name": "my view",
"userId": "dipu",
"associatedWithAView": false
},
"deal": {
"dealNumbers": [
"HH_2282759"
],
"fromDateExpression": {
"expression": "t+2",
"date": "2016-03-16"
},
"toDateExpression": {
"expression": "t+3",
"date": "2016-02-17"
}
}
}
]
我可以使用正则表达式吗?因为像t+5
这样的案例很多,t+6
https://jsfiddle.net/xxhg2bvc/怎么样
(我想说明一点 - 下面的代码完全有效)
Date.prototype.गांवारू=function(d){return new Date(this.valueOf()+864E5*d);};
function ლ_ಠ益ಠ_ლ(ಠ_ಠ){
var π = ಠ_ಠ.getDate();
var ಠ = ("0" + (ಠ_ಠ.getMonth() + 1)).slice(-2);
var शैतानआरहाहै = ಠ_ಠ.getFullYear();
return शैतानआरहाहै+'-'+ಠ+'-'+π;
}
var जावास्क्रिप्ट = data.map(function(el){
var Hͫ̆̒̐ͣ̊̄ͯ͗͏̵̗̻̰̠̬͝ͅE̴̷̬͎̱̘͇͍̾ͦ͊͒͊̓̓̐_̫̠̱̩̭̤͈̑̎̋ͮͩ̒͑̾͋͘Ç̳͕̯̭̱̲̣̠̜͋̍O̴̦̗̯̹̼ͭ̐ͨ̊̈͘͠M̶̝̠̭̭̤̻͓͑̓̊ͣͤ̎͟͠E̢̞̮̹͍̞̳̣ͣͪ͐̈T̡̯̳̭̜̠͕͌̈́̽̿ͤ̿̅̑Ḧ̱̱̺̰̳̹̘̰́̏ͪ̂̽͂̀͠ = new Date();
el.deal.fromDateExpression.date = ლ_ಠ益ಠ_ლ(Hͫ̆̒̐ͣ̊̄ͯ͗͏̵̗̻̰̠̬͝ͅE̴̷̬͎̱̘͇͍̾ͦ͊͒͊̓̓̐_̫̠̱̩̭̤͈̑̎̋ͮͩ̒͑̾͋͘Ç̳͕̯̭̱̲̣̠̜͋̍O̴̦̗̯̹̼ͭ̐ͨ̊̈͘͠M̶̝̠̭̭̤̻͓͑̓̊ͣͤ̎͟͠E̢̞̮̹͍̞̳̣ͣͪ͐̈T̡̯̳̭̜̠͕͌̈́̽̿ͤ̿̅̑Ḧ̱̱̺̰̳̹̘̰́̏ͪ̂̽͂̀͠ .गांवारू(el.deal.fromDateExpression.expression.match(/t(.*)/)[1]));
el.deal.toDateExpression.date = ლ_ಠ益ಠ_ლ(Hͫ̆̒̐ͣ̊̄ͯ͗͏̵̗̻̰̠̬͝ͅE̴̷̬͎̱̘͇͍̾ͦ͊͒͊̓̓̐_̫̠̱̩̭̤͈̑̎̋ͮͩ̒͑̾͋͘Ç̳͕̯̭̱̲̣̠̜͋̍O̴̦̗̯̹̼ͭ̐ͨ̊̈͘͠M̶̝̠̭̭̤̻͓͑̓̊ͣͤ̎͟͠E̢̞̮̹͍̞̳̣ͣͪ͐̈T̡̯̳̭̜̠͕͌̈́̽̿ͤ̿̅̑Ḧ̱̱̺̰̳̹̘̰́̏ͪ̂̽͂̀͠ .गांवारू(el.deal.toDateExpression.expression.match(/t(.*)/)[1]));
return el;
})
console.log(जावास्क्रिप्ट);
相关文章:
- 使用javascript&自定义验证器检查开始日期和结束日期
- 如何在dhtmlxgantt中显示灯箱中的开始日期、结束日期和持续时间
- 如何在javascript中获得给定的月份开始日期和结束日期
- 在选择开始日期后设置结束日期
- JavaScript-计算两个日期之间的天数(包括结束日期)
- 基础日期选择器、结束日期(和时间)不能早于开始日期(和时间)
- 结束日期作为基础日期时间选择器中的选定开始日期
- 开始日期和结束日期输入字段的 JQuery 筛选器表
- 在ExtJS中获取开始/结束日期之间的日期
- 转换mysql的Fullcalendar开始/结束日期
- angularjs提交表单中的开始日期结束日期验证应被禁用
- Jquery FullCalendar扩展开始日期或结束日期
- 从jquery中的开始日期计算结束日期
- 检查开始日期是否小于结束日期(不使用任何pluguin)
- 如何在引导程序中比较结束日期和开始日期,以确保结束日期大于开始日期
- jQuery验证以比较开始日期和结束日期
- FullCalendar 开始和结束日期在获取事件时解析为 null
- JSON Linq.js 筛选开始日期结束日期列
- 比较日期——结束日期应该大于开始日期
- j使用时区/开始日期/结束日期查询进度条