[javascript] 날짜(-) 구분자 넣기, 숫자 3자리 단위마다 콤마(comma) 찍기



ㅇ 날짜(-) 구분자 넣기


function changeDateString(date){
    var year = date.substr(2,2);
    var month = date.substr(4,2);
    var day = date.substr(6,2);
    return year + "-" + month + "-" + day
}

날짜에는 "20160102" 과 같은 형식의 날짜를 넣어 주면 16-01-02 형식의 string 이 반환되는 함수를 만들어 보았습니다. 
substr() 함수를 이용하면 손 쉽게 할 수 있습니다. 




ㅇ 숫자 3자리 단위마다 콤마(comma) 찍기



function comma(num){
    var len, point, str;  
       
    num = num + "";  
    point = num.length % 3 ;
    len = num.length;  
   
    str = num.substring(0, point);  
    while (point < len) {  
        if (str != "") str += ",";  
        str += num.substring(point, point + 3);  
        point += 3;  
    }  
     
    return str;
 
}

위의 함수에는 몇 자리의 string 을 넣든 3자리 단위로 나누어서 글자를 출력해줍니다.

아래는 출력 결과이고 원 데이터는 , 가 없는 그냥 데이터입니다. 





- 예외 상황을 고려한 코드 

function formatDate(_date, short = false){
if(_date == null){
return _date;
}
if(_date.length == 8){
if(short == true){
return _date.substring(4, 6) + "-" + _date.substring(6, 8);
}else {
return _date.substring(0, 4) + "-" + _date.substring(4, 6) + "-" + _date.substring(6, 8);
}

}else {
return _date;
}
}


function formatTime(_time){
if(_time == null){
return _time;
}
if(_time.length == 6){
return _time.substring(0, 2) + ":" + _time.substring(2, 4) + ":" + _time.substring(4, 6);
}else {
return _time;
}
}




- 출처 -

http://fruitdev.tistory.com/160