如何把mm/dd/yyyy变成 yyyy-mm-dd有一个日期字符是 10/23/2009 我要把它变成 2009-10-23 然后用现有的正则验证。怎样把10/23/2009 变成 2009-10-23 ?

解决方案 »

  1.   

    str = str.replace(/(\d+)\/(\d+)\/(\d+)/g, "$3-$1-$2")
      

  2.   

    L@_@K
    var d = new Date("10/23/2009");
    var newFmt = d.getFullYear() + "-" + (d.getMonth() + 1) + "-" + d.getDate();
    alert(newFmt);
      

  3.   


    <script type="text/javascript">
    <!--
    alert("10/23/2009".replace("/","-").split("/").reverse().join("-"))
    //-->
    </script>
      

  4.   

    (d.getMonth() + 1)为什么要加一
      

  5.   


    要获取用全球标准时间 (UTC)表示的月份值,请使用 getUTCMonth 方法。 getMonth 方法返回一个处于 0 到 11 之间的整数,它代表 Date 对象中的月份值。这个整数并不等于按照惯例来表示月份的数字,而是要比按惯例表示的值小 1。如果一个 Date 对象中保存的时间值是 "Jan 5, 1996 08:47:00",那么 getMonth 方法就会返回 0。详见 JScript语言参考.rar
    http://download.csdn.net/source/308916Web 开发常用手册DHTML参考手册.rar
    http://download.csdn.net/source/308913样式表中文手册.chm
    http://download.csdn.net/source/304124
      

  6.   

    ,用正则的方法太妙了。
    split 成数组再倒序 然后 join 也不错。