在对象中找不到函数parseInt

时间:2014-05-15 15:06:52

标签: javascript google-apps-script parseint

我正在编写一个Google Apps脚本,该脚本应该在某个事件的日期临近时发送警告电子邮件。我在Google电子表格中设置了所有活动,每个活动都有与之关联的开始和结束日期。

我在尝试从电子表格中的单元格中解析日期时遇到了问题。当我在单元格中获取日期的值时,它实际上并没有返回Date对象,因此我无法从从单元格获得的值中直接创建日期。但是,我可以将其转换为字符串,然后将字符串拆分为空格标记以获取年,月和日。现在这就是问题发生的地方;它不会让我在结果变量上执行.parseInt(),我无法弄清楚原因。到目前为止,我用来转换从电子表格中获取的日期的函数代码如下所示:

function convertToDateObject(date)
{
  var months = 
      {
        'Jan' : '01',
        'Feb' : '02',
        'Mar' : '03',
        'Apr' : '04',
        'May' : '05',
        'Jun' : '06',
        'Jul' : '07',
        'Aug' : '08',
        'Sep' : '09',
        'Oct' : '10',
        'Nov' : '11',
        'Dec' : '12'
      };

  var dateArray = date.toString().split(" ");
  var month = dateArray[1].parseInt(); // This is actually in the form of name (e.g. Jan, Feb, etc.), but I know how to change this already 
  var day = dateArray[2].parseInt();
  var year = dateArray[3].parseInt();
}

我到目前为止所有这些,因为当我尝试编译时,我得到一个错误说明:"无法在对象中找到函数parseInt ..."

如果我输入月,日或年,则返回字符串。任何人都可以帮助我吗?

1 个答案:

答案 0 :(得分:0)

String没有任何parseInt方法。 parseInt是一个全局函数http://www.w3schools.com/jsref/jsref_parseint.asp

  var dateArray = date.toString().split(" ");
  var month = parseInt(dateArray[1], 10); // This is actually in the form of name (e.g. Jan, Feb, etc.), but I know how to change this already 
  var day = parseInt(dateArray[2], 10);
  var year = parseInt(dateArray[3], 10);