我有一个包含日期字符串格式(yyyy-mm-dd)的变量数量的页面,这些变量源自使用moment.js。jQuery:传递字符串变量到日期对象
有没有一种方法可以将这样的变量传递给Javascript日期对象。将其转换为Javascript日期对象? 我对时间不感兴趣,所以只要我可以将日期转换为日期对象,那就太好了。
我尝试以下,但这不起作用,我无法找到使用moment.js办法:对于任何帮助,蒂姆
var newVar = new Date(dateVar);
非常感谢。
我有一个包含日期字符串格式(yyyy-mm-dd)的变量数量的页面,这些变量源自使用moment.js。jQuery:传递字符串变量到日期对象
有没有一种方法可以将这样的变量传递给Javascript日期对象。将其转换为Javascript日期对象? 我对时间不感兴趣,所以只要我可以将日期转换为日期对象,那就太好了。
我尝试以下,但这不起作用,我无法找到使用moment.js办法:对于任何帮助,蒂姆
var newVar = new Date(dateVar);
非常感谢。
首先我要说以下应该为你工作..
var dateVar = "2010-10-30";
var d=new Date(dateVar);
,如果你说上面不工作检查下面的一个 -
var dateVar = "2010-10-30";
var dsplit = dateVar.split("-");
var d=new Date(dsplit[0],dsplit[1]-1,dsplit[2]);
为证明检查jsf iddle ..都工作正常.. JSFiddle
非常感谢。第二个对我来说工作得很好。这会比在这种情况下使用正则表达式更快吗? – user2571510
正则表达式为什么?分割日期字符串?我会建议你使用相同的代码..因为我们只需要用**连字符( - )**来分割字符串,这是一个简单的任务。所以我不会建议你创建一个更多的对象只是为了分裂.. –
你是对的。感谢您的解释,这很好 - 只是想检查。再次感谢 ! – user2571510
console.log()
一直使用到显示输出,运行这个你就会明白的代码
<script type='text/javascript'>
var StringDate = "2013-4-13"
var date = StringDate.split("-");
console.log(date[0]);
console.log(date[1]);
console.log(date[2]);
NewDate = new Date(date[0],date[1]-1,date[2]);//Date object
console.log(NewDate);
</script>
谢谢 - 这看起来不错!由于我必须用连续的几个字符串来做到这一点,所以我希望为他们每个人减少代码。有没有办法与正则表达式一样呢? – user2571510
为了解决这个问题,我一个做功能谁管理,从文本到日期的变化:
我的例子有日期的作品,因为这:君/ 1/2016至16年-06-01你可以重建函数来使你的格式工作...
在数字左侧的cero's被添加以匹配日期类型格式。
function textoafecha(texto)
{
hasNumber = /\d/;
// Contiene el pedazo del texto que contiene el mes
mestexto = texto.substr(0,3);
// Contiene el pedazo de texto que contiene el primer numero del dia
diatextonumero1 = texto.substr(4,1);
diatextonumero2 = texto.substr(5,1);
// Si el texo contiene un numero...
if (hasNumber.test(diatextonumero2))
{
dia = texto.substr(4,2);
anotexto = texto.substr(7,4);
}
else
{
dia = texto.substr(4,1);
dia = "0"+ dia;
anotexto = texto.substr(6,4);
}
switch (mestexto)
{
case "Jan" : mesnumero = "01";
break;
case "Feb" : mesnumero = "02";
break;
case "Mar" : mesnumero = "03";
break;
case "Apr" : mesnumero = "04";
break;
case "May" : mesnumero = "05";
break;
case "Jun" : mesnumero = "06";
break;
case "Jul" : mesnumero = "07";
break;
case "Aug" : mesnumero = "08";
break;
case "Sep" : mesnumero = "09";
break;
case "Oct" : mesnumero = "10";
break;
case "Nov" : mesnumero = "11";
break;
case "Dic" : mesnumero = "12";
break;
default : break;
}
fechaformateada = anotexto + "-" + mesnumero + "-" + dia;
return fechaformateada;
}
可以改为调用TODATE()momentjs的方法得到它作为一个字符串的... –
请参阅本的其他问题:http://stackoverflow.com/questions/8099681/is-there-a -php-date-equivalent-in-javascript-jquery – MjrKusanagi
'var newVar = new Date(dateVar);'似乎在为我工作。尝试'控制台中的新日期(“2014-03-05”)' – tewathia