JS中将2013-01-01字符串转换成2013-1-1日期格式

   更新日期:2024.05.05

思路:

  1. 现将字符串变成数组。

  2. 数组中的每一项元素变成数组,这样就会自动把0去掉。

  3. 在将数组编程字符串。

代码实现:

var a = '2013-01-01';
console.log(a.split('-').map(function(aa){return +aa}).join('-')); //输出结果:"2013-1-1"


var str = '2013-01-01';
var date = new Date(str.replace('-', '/'));


无需正则直接转换即可,chrome亲测通过

var str = "2014-1-13";
var d = new Date(str);


function parse(date){
    var arr=date.split("-");
    var str="";
    for(var i=0;i<arr.length;i++){
str+=parseInt(arr[i]);
if(i<arr.length-1){
    str+="-";
}
    }
    return str;
}
alert(parse("2012-01-01")); //2012-1-1


'2013-01-01'.replace(/-0/g,"-");
使用正则最方便了

  • 15177194179 :js中把时间分隔符-替换成/ IE浏览器要怎么实现
    冉宣戴937 :答:可以使用正则表达式进行替换,方法如下:var dateOld = '2015-01-01';var dateNew = dateOld.replace(/-/g, '/');执行后dateNew的值为2015/01/01 正则表达式/-/g表示匹配字符串中所有的-符号,replace的第二个...
  • 15177194179 :...并获取两个时间之间的月份数,如'2017-01-01','2018-17-12'_百度...
    冉宣戴937 :答:parseInt(numArr[3])];}function getMonths(s1,s2){ var a1 = getNums(s1); var a2 = getNums(s2); return (a2[0]-a1[0])*12+a2[1]-a1[1];}console.log(getMonths("2017-01-01","2018-12-...
  • 15177194179 :EXCEL中怎么能让20130101这样的日期格式改为2013-01-01这样的格式
    冉宣戴937 :答:很简单,在要输入日期的单元格右击选择设置单元格格式,然后数字再点自定义。然后在右侧随便选一个然后在类型处 修改成 0000-00-00 就可以。预选可能会出现负数值,变成一串##号
  • 15177194179 :...年-月-日 时:分:秒如: 2013-9-9 15:30:30 ,向大侠求助
    冉宣戴937 :答: var time = '2013-9-9 14:40:30'; chkTime(time); function chkTime(time) { var reg = /\d+\-\d+\-\d+\s+\d+\:\d+\:\d+/; if (time.match(reg, time)) { alert('时间格...
  • 15177194179 :我excel里面有一列2013—01—01这样的日期数据,如何能快速的变成 20130...
    冉宣戴937 :答:=SUBSTITUTE(A2,"—",)如果是日期格式,设置单元格格式为 yyyymmdd
  • 15177194179 :...hh:mi(精确到分钟),例如2013-01-01 12:10,速求
    冉宣戴937 :答:new SimpleDateFormat("yyyy-MM-dd HH:mm").parse("2013-01-01 12:10"); , 这样试试
  • 15177194179 :...hh:mi(精确到分钟),例如2013-01-01 12:10,速求
    冉宣戴937 :答:^(\d{4})-(0\d{1}|1[0-2])-(0\d{1}|[12]\d{1}|3[01]) (0\d{1}|1\d{1}|2[0-3]):([0-5]\d{1})$ 这个应该可以,我测了的。。。
  • 15177194179 :将一个表中的数据插入另外一个表中,并且增加新的字段
    冉宣戴937 :答:如果表一更改,就是要在表一中建立触发器;下面是insert的触发器:create trigger tgr_insert on 表一 for insert --插入触发 as --定义变量 declare @A varchar(20), @B varchar(20);select @A = A, @B = B ...
  • 15177194179 :ACCESS 2003中怎样把日期格式显示为8位?如2013-01-01
    冉宣戴937 :答:1,不论在窗体还是报表还是在表结构修改时,选中该字段,在其属性表中--格式--格式,输入"yyyy-mm-dd"2,同是在属性表中--数据--掩码,输入"0000-00-00"
  • 15177194179 :电子表格中20130101如何实现2013/01/01日期格式
    冉宣戴937 :答:方法一 选中这个数据所在单元格或区域---数据---分列---下一步---直到步骤三---列数据格式---日期(YMD)---完成 如果得到是是用"-"分隔的,则再设置该单元格或单元格区域---自定义---类型中输入 e/mm/dd ...
  • 相关链接

    欢迎反馈与建议,请联系电邮
    2024 © 视觉网