在javascript

时间:2017-06-12 06:55:37

标签: javascript string customization

你好,每个我都有类型字符串的日期字段,iso格式如下: const date =" 2017-06-10T16:08:00:我想以某种方式编辑以下格式的字符串,如下所示:10-06-2017但我正在努力实现这一目标。 我在" T"之后切断了子串。字符

7 个答案:

答案 0 :(得分:11)

使用Moment.js.format功能。

moment('2017-06-10T16:08:00').format('MM/DD/YYYY');

将输出

06/10/2017

format函数Moment.js旁边,您将获得更多有用的功能。

答案 1 :(得分:8)

可以在没有moment.js的情况下实现,但我建议你使用它

var date = new Date("2017-06-10T16:08:00");

var year = date.getFullYear();
var month = date.getMonth()+1;
var day = date.getDate();

if (day < 10) {
  day = '0' + day;
}
if (month < 10) {
  month = '0' + month;
}

var formattedDate = day + '-' + month + '-' + year

答案 2 :(得分:2)

如果日期字符串始终为ISO格式,您还可以使用正则表达式重新格式化而不使用其他库:

date.replace(/(\d{4})\-(\d{2})\-(\d{2}).*/, '$3-$2-$1')

答案 3 :(得分:1)

我想建议使用时刻js找到它 - http://momentjs.com/docs/

并像

一样使用它
    moment(date.toString()).format("MM/DD/YYYY")

答案 4 :(得分:1)

使用Date.toJSON()

function formatDate(userDate) {
  // format from M/D/YYYY to YYYYMMDD
  return (new Date(userDate).toJSON().slice(0,10).split('-').reverse().join('-'));
}

console.log(formatDate("2017-06-10T16:08:00"));

答案 5 :(得分:0)

您可以使用内置函数中的JavaScript date()来获取所需的部分日期/时间。 例如,显示时间是10:30:

<script>
var date = new Date();
 var min = date.getMinutes();
  var hour = date.getHour();
   document.write(hour+":"+min);
   </script>

获取年,月,日,星期几使用

  • 和getFullYear();

  • 得到月();

  • GETDATE();

  • getDay();

要获取您发布的日期:

答案 6 :(得分:-1)

如果您希望使用香草javascript来做到这一点,@ Ivan Mladenov的答案很好,可以使用padStart进行合并。

const date = new Date()
const year = date.getFullYear()
const month = String(date.getMonth() + 1).padStart(2, '0')
const day = String(date.getDate()).padStart(2, '0')

console.log(`${day}-${month}-${year}`)