我需要一些关于JS函数的明显指示。
以下代码有效,但我想在任何地方调用它:
var pattern = /(\d{2})\-(\d{2})\-(\d{4})/;
var date = entry.date.split(' ');
var date = date[0];
var date = new Date(date.replace(pattern,'$3-$2-$1'));
var year = date.getYear();
var month = date.getMonth();
var day = date.getDay();
将此放在全局函数中的最佳做法是什么,所以我可以adjustDate(string)
。双点(可悲的是,不是我的力量)来解释我如何能够访问所有对象,例如year
,month
,day
。
提前致谢!
答案 0 :(得分:2)
你不能宣布这个功能吗?
function adjustDate(entry) {
var date = entry.date.split(' ');
date = date[0];
date = new Date(date.replace(/(\d{2})\-(\d{2})\-(\d{4})/, '$3-$2-$1'));
return {
year: date.getYear(),
month: date.getMonth(),
day: date.getDay()
};
}
答案 1 :(得分:1)
将条目传递给函数,然后传递包含所需信息的对象。然后就像访问普通的JS对象一样访问它。
function adjustDate(entry) {
var pattern = /(\d{2})\-(\d{2})\-(\d{4})/;
var date = entry.date.split(' ');
var date = date[0];
var date = new Date(date.replace(pattern,'$3-$2-$1'));
var year = date.getYear();
var month = date.getMonth();
var day = date.getDay();
return { day: day, month: month, year: year }
}
var dateObject = adjustDate(/*entry*/)
dateObject.day // day
dateObject.month // month
答案 2 :(得分:1)
我只返回date
而不抽象现有方法
function AdjustedDate(dateString)
{
return new Date(dateString.split(' ')[0].replace(/(\d{2})\-(\d{2})\-(\d{4})/, '$3-$2-$1'));
}
var ad = AdjustedDate(entry.date);
alert(ad);
alert(ad.getDay());