Javascript 如果变量是日期,那么转换它?

Javascript 如果变量是日期,那么转换它?,javascript,Javascript,我想知道我是否可以创建一个可以读取变量的函数,如果它是一个日期,则将其转换为dd/mm/yyyy,如果它不是一个日期,则不能执行任何操作 日期是这种格式的 2011-11-16T16:48:34.743 在我的例子中,我有这样的代码:(我必须读取列的名称,如果是egal,那么我取变量的值。问题是,当它取日期时,我可以格式化它) 我必须用范围记录单中的值替换单词。任务[key] 方法匹配不适用于票证。请尝试以下操作: var s = "2011-11-16T16:48:34.743"; try

我想知道我是否可以创建一个可以读取变量的函数,如果它是一个日期,则将其转换为dd/mm/yyyy,如果它不是一个日期,则不能执行任何操作

日期是这种格式的

2011-11-16T16:48:34.743
在我的例子中,我有这样的代码:(我必须读取列的名称,如果是egal,那么我取变量的值。问题是,当它取日期时,我可以格式化它)

我必须用范围记录单中的值替换单词。任务[key] 方法匹配不适用于票证。请尝试以下操作:

var s = "2011-11-16T16:48:34.743";
try {
  var d = new Date(s);
  var formated = d.getDate() + '/' + (d.getMonth() + 1) + '/' + d.getFullYear();
} catch (e) {
  alert("not a date");
}
编辑
这是错误的,new Date()不会抛出

是的,您可以(正如phylax所证明的,即使错误的日期不会抛出任何异常),但是……您尝试了什么吗?至少是谷歌搜索?@Konstantin D-Infrastics我尝试了你给我的答案,但我不工作。不,新日期不会对无效日期引发任何异常。uups我在控制台中尝试过,但误解了结果。
var s = "2011-11-16T16:48:34.743";
try {
  var d = new Date(s);
  var formated = d.getDate() + '/' + (d.getMonth() + 1) + '/' + d.getFullYear();
} catch (e) {
  alert("not a date");
}