我有这种日期格式
2015年1月1日
我怎样才能获得这一年" 2015"来自字符串" 2015年1月1日"?
到目前为止我试过这个
var str = "Jan 1, 2015";
var res = str.substr(1, 7);
但不幸的是,遗憾的是没有工作。有什么帮助,想法,线索吗?
答案 0 :(得分:4)
这可能是最安全的解决方案:
new Date('Jan 1, 2015').getFullYear(); // 2015
答案 1 :(得分:1)
您可以使用,
分隔符
var res = +'Jan 1, 2015'.split(',')[1];
或substr
:
var res = +'Jan 1, 2015'.substr(7),
res = +'Jan 1, 2015'.substr(-4);
答案 2 :(得分:1)
如果字符串总是采用该格式,则可以选择以下选项:
var str = "Jan 1, 2015";
var year = parseInt(str.split(', ').pop());
alert(year)
str.split(', ')
将字符串拆分为如下数组:["Jan 1", "2015"]
然后,.pop
返回最后一个值"2015"
,而parseInt
显然会将其解析为整数。
答案 3 :(得分:1)
或者您可以使用最复杂的方式之一!
O O
°
\O/
Feb 31, 2015
是有效的字符串,不是有效的日期
var reg = /^([JFMASON][abceglnoprtuv]{2}) ([1-9]|[12][0-9]|[3][01]), ([0-9]|[12][0-9]|[123]?[0-9][0-9]{2})$/;
var r;
document.write('<br> :' + ( (r = 'Feb 31, 2015'.match(reg)) ? r[3] : 'not valid') );
document.write('<br> :' + ( (r = 'Jan 31, 3015'.match(reg)) ? r[3] : 'not valid') );
document.write('<br> :' + ( (r = 'Jan 31, 2015'.match(reg)) ? r[3] : 'not valid') );
document.write('<br> :' + ( (r = 'Jan 31, 1995'.match(reg)) ? r[3] : 'not valid') );
document.write('<br> :' + ( (r = 'Jan 31, 115'.match(reg)) ? r[3] : 'not valid') );
document.write('<br> :' + ( (r = 'Jan 31, 15'.match(reg)) ? r[3] : 'not valid') );
document.write('<br> :' + ( (r = 'Jan 31, 5'.match(reg)) ? r[3] : 'not valid') );
document.write('<br> :' + ( (r = 'Jan 31, 0'.match(reg)) ? r[3] : 'not valid') );
document.write('<br> :' + ( (r = 'Jan 31, 4000'.match(reg)) ? r[3] : 'not valid') );
答案 4 :(得分:0)
所有其他解决方案只是操纵字符串。但如果它真的是一个约会:
var year = new Date("Jan 1, 2015").getFullYear();
//year = 2015
答案 5 :(得分:0)
您可以使用javaScript日期格式:
var date = new Date(str);
var year = date.getFullYear();
有关更多信息,请查看 https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date
答案 6 :(得分:0)
你也可以使用 var timestamp = Date.parse(&#34; 2015年1月1日和#34;); 的console.log(时间戳); // 1420052400000 并转换任何类型的日期参数
答案 7 :(得分:-1)
var data = 'Jan 1, 2015';
var data1 = data.split(' ');
alert(data1[2]);
拆分值然后得到最后一个。 在您的示例中,在空格中进行拆分并获取最后一个2
的索引你也可以使用pop()
data1.pop()