Javascript中的数据类型转换?

时间:2015-05-20 07:10:08

标签: javascript pentaho

我有字符串类型字段(Date_),其中包含此格式的日期 的日期_
20-05-2015 21-05-2015 22-05-2015 我想将此字符串类型字段转换为具有实际格式的日期类型字段。 我想在“JavaScript Modified Step”中执行此操作。

2 个答案:

答案 0 :(得分:2)

尝试:

var dates = '20-05-2015 21-05-2015 22-05-2015'.split(' ').map(function(date) {
   date = date.split('-');
   // Date accept date in format MM-DD-YYYY
   return new Date(date[1] + '-' + date[0] + '-' + date[2]);
});

答案 1 :(得分:0)

This可能有用。正则表达式可以使用它的一部分来重新排列日期。

Javascript日期需要采用特定格式。例如。 MM-DD-YYYY。

所以

function transformTestDate()
{
    var reg = /(\d{2})-(\d{2})-(\d{4})/g;
    var dateStr = '20-05-2015 21-05-2015 22-05-2015';
    return dateStr.replace(reg, '$2-$1-$3');  
// outputs 05-20-2015 05-21-2015 05-22-2015
}

这会将您的日期转换为正确的格式。 然后你需要遍历它们并获得Date对象,如@jcubic的答案

function getDatesFromTestString()
{
    var dateStr = transfromTestDate();
    var dateArr = dateStr.split(' ');
    for(var i = 0,l = dateArr.length; i < l; i++)
        dateArr[i] = new Date(dateArr[i]);
    return dateArr;
    /*returns [Wed May 20 2015 00:00:00 GMT+0200 (South Africa Standard Time), 
    Thu May 21 2015 00:00:00 GMT+0200 (South Africa Standard Time),
    Fri May 22 2015 00:00:00 GMT+0200 (South Africa Standard Time)]*/
}

为您提供日期数组

  

注意:我以json格式显示了输出