巧用JS字符串的方法

来源:互联网 发布:圆方铺砖软件破解版 编辑:程序博客网 时间:2024/05/07 00:41

今天学到了一个小技巧,和大家分享一下。
我们常常会遇到时间字符串的各种转换,麻烦的很。但是如果你对String对象的各个方法都能熟练掌握的话,这些都是小菜一碟。
我今天遇到的问题是如何给数字前补0,比如你要得到的是2016-07-30,而你获取的却是2016-7-30,这就有点小尴尬,要做到转化方法有如下两个:
方法一

/** * 将形如yyyy-m-d的字符串转化为yyyy-mm-dd格式的 * @param {Object} yyyy-m-d */var changeStr = function(str){    var year = str.substring(0,4);    var month = str.substring(str.indexOf('-') + 1, str.lastIndexOf('-'));    var day = str.substring(str.lastIndexOf('-') + 1);    return  year + '-'             + (month < 10 ? '0' + month : month) + '-'            + (day < 10 ? '0' + day : day);}console.log(changeStr('2016-7-5'));// 2016-07-05

方法二

/** * 将形如yyyy-m-d的字符串转化为yyyy-mm-dd格式的 * @param {Object} yyyy-m-d */var changeStr = function(str){    var year = str.substring(0,4);    var month = str.substring(str.indexOf('-') + 1, str.lastIndexOf('-'));    var day = str.substring(str.lastIndexOf('-') + 1);    return  year + '-'             + ('0' + month).slice(-2) + '-'             + ('0' + day).slice(-2);}console.log(changeStr('2016-7-5'));// 2016-07-05

个人感觉方法二比较好一些。

0 0