开发者

javascript number split

开发者 https://www.devze.com 2022-12-23 00:20 出处:网络
Can anyboyd help me split up this date number in javascript so that when it is outputted to the screen it has slashes between the 4th开发者_如何转开发 and 5th number and the 6th and 7th number, so tha

Can anyboyd help me split up this date number in javascript so that when it is outputted to the screen it has slashes between the 4th开发者_如何转开发 and 5th number and the 6th and 7th number, so that it can be understood by a vxml voice browser. The number can be any value so i need it to work for any eight digit number.

Like so:

20100820

2010/08/20

Many thanks


If you have a simple string:

var a = '23452144';
alert(a.substring(0,4) + '/' + a.substring(4,6) + '/' + a.substring(6));

For a number, you can use

var s = a.toString();

For a long string with many such dates, this will replace their formats (you can easily play with it if you want a dd/mm/yyyy format, for example):

a.replace(/\b(\d{4})(\d{2})(\d{2})\b/g, "$1/$2/$3")


You can use the substring-function for that. Assuming you always have the same input-format (eg. yyyymmdd), it can be done this way:

var dateString = "20100820";
var newValue = dateString.substring(0,4) + "/" + dateString.substring(4,6) + "/" + dateString.substring(6,8);

more on the substring function can be found at: http://www.w3schools.com/jsref/jsref_substring.asp


Use this javascript :

var objRegExp = /(\d{4})(\d{2})(\d{2})/;
var ourdate = "12334556";
var formateddate = ourdate.replace(objRegExp, "$1/$2/$3");

Now formateddate will have the require formatted date string.


var s = 20100820 + "";  // make the integer a string
var t = "";
for(var i=0; i<s.length; i++) {
    if(i == 4) // we're at the 4th char
        t += "/";

    if(i == 6) // we're at the 6th char
        t += "/";

    t += s.charAt(i);

}

console.log(t);


alert(20100820..toString().replace(/^(.{4})(.{2})/, "$1/$2/"))

PS. You need to accept some answers (see https://stackoverflow.com/faq for details).


var date ='20100317';
var output = date.replace(/(\d{4})(\d{2})(\d{2})/i,"$1/$2/$3");
alert(output);
0

精彩评论

暂无评论...
验证码 换一张
取 消