#사용하는 이유

-값이 유한한 값인지 확인하기 위한 내장 함수

 

#반환값

-true, false, NaN

 

#사용방법

isFinitie(확인해야 하는 변수);

 

#사용하게 된 이유

-금융프로젝트 투입되어 일했을 때, 값끼리 계산했는데 자꾸 값이 오류나서 사용했던 기억

간단하게 substring은 문자열을 원하는 만큼 잘라서 보여줄 때 사용한다. (자세한 설명은 아래 링크)

https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/String/substring

 

String.prototype.substring() - JavaScript | MDN

substring() 메소드는 string 객체의 시작 인덱스로 부터 종료 인덱스 전 까지 문자열의 부분 문자열을 반환합니다.

developer.mozilla.org

 

(요청사항)

날짜 입력에 달력버튼은 만들고 일자+시간이 저장 되도록

 

(문제)

xplatform 에서 달력으로 받을 때, 길이가 17자리가 들어온다. 근데 지정된 컬럼은 14자리 이것을 해결하자.

 

(내가 해결한 방법)

dateformat yyyy-MM-dd HH:mm

editformat yyyy-MM-dd HH:mm

 

오늘 날짜가 보이게 설정하고 년-월-일 시:분으로 설정하면 아래 그림처럼 보이게 된다.

 

접수일에 시 분을 설정하고 등록 버튼을 누르면 

오류내용 : 열에 대한 값이 너무 큼(실제: 17, 최대값: 14)

으로 나오게 된다. 실제 들어오는 값은 20220711023400000 으로 2022-07-11 02:34:00:000 뒤에 3자리가 더 들어온다. 3자리는 요일인가...?? 암튼 더 들어와서 잘라줘야 저장할수 있어서 substring을 사용하였다.

 

오류 내용 : substr'은(는) 선언되지 않은 식별자입니다. 

 

이거로 좀 왜지왜지 해서 시간 많이 보냈는데, 단순히 앞에 String()을 해주고 받으면 해결이었다.

var civildt = String(Div01.CIVIL_DT.value).substr(0,14);

20220711023600

으로 2022-07-11 02:36:00 원하는 만큼 잘라져서 insert에 잘 되어진다.

[하고 싶었던 거]

A타입의 1등급, A타입의 2등급, A타입의 3등급, A 타입의 4등급, A타입의 5등급

B

C

D

E

F

G

H

I

J

10개 타입과 5개 등급을 한번에 일괄등록을 시켜야 했다. 기존 소스에서 수정하려고 하여서, xplatform에서 처리를 하려했다.

기존에는 타입은 하드 코딩 하는 방식이어서 타입에 따라 값이 변동이 될 수 있게 하는 작업을 하였다.

일괄등록은 더 확인이 필요 -> 반복문은 문제가 없어 보이는데, dataset에 값을 넣으면 이상하게 틀어진다. 

 

중첩 반복문과  A~J까지 알파벳이 늘어나야 했기 때문에, .charAt() 을 사용하였다. 

처음에는 String.fromCharCode()를 사용하려 했는데, 내가 사용하는  xplatform 버전에서는 되지 않았기 때문에 charAt()으로 사용하였다.

 

[기존 코드]

for(var i=1; i<10; i++) {
ds_dtList00.appendData(cpDataSet);
ds_dtList00.setColumn(i,"GRADE",(i+1));
}

[코드]

    var vChk = "ABCDEFGHIJ";
    for (var i=1; i<vChk.length+1; i++){
    //A~J 타입 10개
        var typeS = vChk.charAt(i);
        for (var j=1; j<6; j++){
        //1~5등급 5개
        trace('i : '+i+' || vChk.charAt(i) : '+vChk.charAt(i-1)+' || j : '+j)
            ds_dtList00.appendData(cpDataSet);
            ds_dtList00.setColumn(j,"TYPE_RT",vChk.charAt(i-1)));
            ds_dtList00.setColumn(i-1,"GRADE",j);
        }
            //ds_dtList00.setColumn(j,"TYPE_RT",(vChk.charAt(i-1)));
        trace('------------')
        }
       

[결과]

uxs (26564): i : 1 || vChk.charAt(i) : A || j : 1
uxs (26564): i : 1 || vChk.charAt(i) : A || j : 2
uxs (26564): i : 1 || vChk.charAt(i) : A || j : 3
uxs (26564): i : 1 || vChk.charAt(i) : A || j : 4
uxs (26564): i : 1 || vChk.charAt(i) : A || j : 5
uxs (26564): ------------
uxs (26564): i : 2 || vChk.charAt(i) : B || j : 1
uxs (26564): i : 2 || vChk.charAt(i) : B || j : 2
uxs (26564): i : 2 || vChk.charAt(i) : B || j : 3
uxs (26564): i : 2 || vChk.charAt(i) : B || j : 4
uxs (26564): i : 2 || vChk.charAt(i) : B || j : 5
uxs (26564): ------------
uxs (26564): i : 3 || vChk.charAt(i) : C || j : 1
uxs (26564): i : 3 || vChk.charAt(i) : C || j : 2
uxs (26564): i : 3 || vChk.charAt(i) : C || j : 3
uxs (26564): i : 3 || vChk.charAt(i) : C || j : 4
uxs (26564): i : 3 || vChk.charAt(i) : C || j : 5
uxs (26564): ------------
uxs (26564): i : 4 || vChk.charAt(i) : D || j : 1
uxs (26564): i : 4 || vChk.charAt(i) : D || j : 2
uxs (26564): i : 4 || vChk.charAt(i) : D || j : 3
uxs (26564): i : 4 || vChk.charAt(i) : D || j : 4
uxs (26564): i : 4 || vChk.charAt(i) : D || j : 5
uxs (26564): ------------
uxs (26564): i : 5 || vChk.charAt(i) : E || j : 1
uxs (26564): i : 5 || vChk.charAt(i) : E || j : 2
uxs (26564): i : 5 || vChk.charAt(i) : E || j : 3
uxs (26564): i : 5 || vChk.charAt(i) : E || j : 4
uxs (26564): i : 5 || vChk.charAt(i) : E || j : 5
uxs (26564): ------------
uxs (26564): i : 6 || vChk.charAt(i) : F || j : 1
uxs (26564): i : 6 || vChk.charAt(i) : F || j : 2
uxs (26564): i : 6 || vChk.charAt(i) : F || j : 3
uxs (26564): i : 6 || vChk.charAt(i) : F || j : 4
uxs (26564): i : 6 || vChk.charAt(i) : F || j : 5
uxs (26564): ------------
uxs (26564): i : 7 || vChk.charAt(i) : G || j : 1
uxs (26564): i : 7 || vChk.charAt(i) : G || j : 2
uxs (26564): i : 7 || vChk.charAt(i) : G || j : 3
uxs (26564): i : 7 || vChk.charAt(i) : G || j : 4
uxs (26564): i : 7 || vChk.charAt(i) : G || j : 5
uxs (26564): ------------
uxs (26564): i : 8 || vChk.charAt(i) : H || j : 1
uxs (26564): i : 8 || vChk.charAt(i) : H || j : 2
uxs (26564): i : 8 || vChk.charAt(i) : H || j : 3
uxs (26564): i : 8 || vChk.charAt(i) : H || j : 4
uxs (26564): i : 8 || vChk.charAt(i) : H || j : 5
uxs (26564): ------------
uxs (26564): i : 9 || vChk.charAt(i) : I || j : 1
uxs (26564): i : 9 || vChk.charAt(i) : I || j : 2
uxs (26564): i : 9 || vChk.charAt(i) : I || j : 3
uxs (26564): i : 9 || vChk.charAt(i) : I || j : 4
uxs (26564): i : 9 || vChk.charAt(i) : I || j : 5
uxs (26564): ------------
uxs (26564): i : 10 || vChk.charAt(i) : J || j : 1
uxs (26564): i : 10 || vChk.charAt(i) : J || j : 2
uxs (26564): i : 10 || vChk.charAt(i) : J || j : 3
uxs (26564): i : 10 || vChk.charAt(i) : J || j : 4
uxs (26564): i : 10 || vChk.charAt(i) : J || j : 5
uxs (26564): ------------
uxs (26564): <Dataset id="ds_dtList00">
    <ColumnInfo>
        <Column id="SEQ_NO" type="STRING" size="256"/>
        <Column id="BS_DT" type="STRING" size="256"/>
        <Column id="GOODS_CD" type="STRING" size="256"/>
        <Column id="GRADE" type="STRING" size="256"/>
        <Column id="SPOT_RT" type="STRING" size="256"/>
        <Column id="PLUS_RT" type="STRING" size="256"/>
        <Column id="TOT_RT" type="STRING" size="256"/>
        <Column id="CRT_ID" type="STRING" size="256"/>
        <Column id="CRT_DTM" type="STRING" size="256"/>
        <Column id="CHG_ID" type="STRING" size="256"/>
        <Column id="CHG_DTM" type="STRING" size="256"/>
        <Column id="TYPE_RT" type="STRING" size="256"/>
    </ColumnInfo>
    <Rows>
        <Row>
            <Col id="BS_DT">20220615</Col>
            <Col id="GOODS_CD">GL005</Col>
            <Col id="GRADE">5</Col>
            <Col id="TOT_RT">NaN</Col>
            <Col id="TYPE_RT">B</Col>
        </Row>
        <Row>
            <Col id="BS_DT">20220615</Col>
            <Col id="GOODS_CD">GL005</Col>
            <Col id="GRADE">5</Col>
            <Col id="TOT_RT">NaN</Col>
            <Col id="TYPE_RT">C</Col>
        </Row>
        <Row>
            <Col id="BS_DT">20220615</Col>
            <Col id="GOODS_CD">GL005</Col>
            <Col id="GRADE">5</Col>
            <Col id="TOT_RT">NaN</Col>
            <Col id="TYPE_RT">D</Col>
        </Row>
        <Row>
            <Col id="BS_DT">20220615</Col>
            <Col id="GOODS_CD">GL005</Col>
            <Col id="GRADE">5</Col>
            <Col id="TOT_RT">NaN</Col>
            <Col id="TYPE_RT">E</Col>
        </Row>
        <Row>
            <Col id="BS_DT">20220615</Col>
            <Col id="GOODS_CD">GL005</Col>
            <Col id="GRADE">5</Col>
            <Col id="TOT_RT">NaN</Col>
            <Col id="TYPE_RT">F</Col>
        </Row>
        <Row>
            <Col id="BS_DT">20220615</Col>
            <Col id="GOODS_CD">GL005</Col>
            <Col id="GRADE">5</Col>
            <Col id="TOT_RT">NaN</Col>
            <Col id="TYPE_RT">G</Col>
        </Row>
        <Row>
            <Col id="BS_DT">20220615</Col>
            <Col id="GOODS_CD">GL005</Col>
            <Col id="GRADE">5</Col>
            <Col id="TOT_RT">NaN</Col>
            <Col id="TYPE_RT">H</Col>
        </Row>
        <Row>
            <Col id="BS_DT">20220615</Col>
            <Col id="GOODS_CD">GL005</Col>
            <Col id="GRADE">5</Col>
            <Col id="TOT_RT">NaN</Col>
            <Col id="TYPE_RT">I</Col>
        </Row>
        <Row>
            <Col id="BS_DT">20220615</Col>
            <Col id="GOODS_CD">GL005</Col>
            <Col id="GRADE">5</Col>
            <Col id="TOT_RT">NaN</Col>
            <Col id="TYPE_RT">J</Col>
        </Row>
        <Row>
            <Col id="BS_DT">20220615</Col>
            <Col id="GOODS_CD">GL005</Col>
            <Col id="GRADE">5</Col>
            <Col id="TOT_RT">NaN</Col>
            <Col id="TYPE_RT"/>
        </Row>
        <Row>
            <Col id="BS_DT">20220615</Col>
            <Col id="GOODS_CD">GL005</Col>
            <Col id="TOT_RT">NaN</Col>
        </Row>
        <Row>
            <Col id="BS_DT">20220615</Col>
            <Col id="GOODS_CD">GL005</Col>
            <Col id="TOT_RT">NaN</Col>
        </Row>
        <Row>
            <Col id="BS_DT">20220615</Col>
            <Col id="GOODS_CD">GL005</Col>
            <Col id="TOT_RT">NaN</Col>
        </Row>
        <Row>
            <Col id="BS_DT">20220615</Col>
            <Col id="GOODS_CD">GL005</Col>
            <Col id="TOT_RT">NaN</Col>
        </Row>
        <Row>
            <Col id="BS_DT">20220615</Col>
            <Col id="GOODS_CD">GL005</Col>
            <Col id="TOT_RT">NaN</Col>
        </Row>
        <Row>
            <Col id="BS_DT">20220615</Col>
            <Col id="GOODS_CD">GL005</Col>
            <Col id="TOT_RT">NaN</Col>
        </Row>
        <Row>
            <Col id="BS_DT">20220615</Col>
            <Col id="GOODS_CD">GL005</Col>
            <Col id="TOT_RT">NaN</Col>
        </Row>
        <Row>
            <Col id="BS_DT">20220615</Col>
            <Col id="GOODS_CD">GL005</Col>
            <Col id="TOT_RT">NaN</Col>
        </Row>
        <Row>
            <Col id="BS_DT">20220615</Col>
            <Col id="GOODS_CD">GL005</Col>
            <Col id="TOT_RT">NaN</Col>
        </Row>
        <Row>
            <Col id="BS_DT">20220615</Col>
            <Col id="GOODS_CD">GL005</Col>
            <Col id="TOT_RT">NaN</Col>
        </Row>
        <Row>
            <Col id="BS_DT">20220615</Col>
            <Col id="GOODS_CD">GL005</Col>
            <Col id="TOT_RT">NaN</Col>
        </Row>
        <Row>
            <Col id="BS_DT">20220615</Col>
            <Col id="GOODS_CD">GL005</Col>
            <Col id="TOT_RT">NaN</Col>
        </Row>
        <Row>
            <Col id="BS_DT">20220615</Col>
            <Col id="GOODS_CD">GL005</Col>
            <Col id="TOT_RT">NaN</Col>
        </Row>
        <Row>
            <Col id="BS_DT">20220615</Col>
            <Col id="GOODS_CD">GL005</Col>
            <Col id="TOT_RT">NaN</Col>
        </Row>
        <Row>
            <Col id="BS_DT">20220615</Col>
            <Col id="GOODS_CD">GL005</Col>
            <Col id="TOT_RT">NaN</Col>
        </Row>
        <Row>
            <Col id="BS_DT">20220615</Col>
            <Col id="GOODS_CD">GL005</Col>
            <Col id="TOT_RT">NaN</Col>
        </Row>
        <Row>
            <Col id="BS_DT">20220615</Col>
            <Col id="GOODS_CD">GL005</Col>
            <Col id="TOT_RT">NaN</Col>
        </Row>
        <Row>
            <Col id="BS_DT">20220615</Col>
            <Col id="GOODS_CD">GL005</Col>
            <Col id="TOT_RT">NaN</Col>
        </Row>
        <Row>
            <Col id="BS_DT">20220615</Col>
            <Col id="GOODS_CD">GL005</Col>
            <Col id="TOT_RT">NaN</Col>
        </Row>
        <Row>
            <Col id="BS_DT">20220615</Col>
            <Col id="GOODS_CD">GL005</Col>
            <Col id="TOT_RT">NaN</Col>
        </Row>
        <Row>
            <Col id="BS_DT">20220615</Col>
            <Col id="GOODS_CD">GL005</Col>
            <Col id="TOT_RT">NaN</Col>
        </Row>
        <Row>
            <Col id="BS_DT">20220615</Col>
            <Col id="GOODS_CD">GL005</Col>
            <Col id="TOT_RT">NaN</Col>
        </Row>
        <Row>
            <Col id="BS_DT">20220615</Col>
            <Col id="GOODS_CD">GL005</Col>
            <Col id="TOT_RT">NaN</Col>
        </Row>
        <Row>
            <Col id="BS_DT">20220615</Col>
            <Col id="GOODS_CD">GL005</Col>
            <Col id="TOT_RT">NaN</Col>
        </Row>
        <Row>
            <Col id="BS_DT">20220615</Col>
            <Col id="GOODS_CD">GL005</Col>
            <Col id="TOT_RT">NaN</Col>
        </Row>
        <Row>
            <Col id="BS_DT">20220615</Col>
            <Col id="GOODS_CD">GL005</Col>
            <Col id="TOT_RT">NaN</Col>
        </Row>
        <Row>
            <Col id="BS_DT">20220615</Col>
            <Col id="GOODS_CD">GL005</Col>
            <Col id="TOT_RT">NaN</Col>
        </Row>
        <Row>
            <Col id="BS_DT">20220615</Col>
            <Col id="GOODS_CD">GL005</Col>
            <Col id="TOT_RT">NaN</Col>
        </Row>
        <Row>
            <Col id="BS_DT">20220615</Col>
            <Col id="GOODS_CD">GL005</Col>
            <Col id="TOT_RT">NaN</Col>
        </Row>
        <Row>
            <Col id="BS_DT">20220615</Col>
            <Col id="GOODS_CD">GL005</Col>
            <Col id="TOT_RT">NaN</Col>
        </Row>
        <Row>
            <Col id="BS_DT">20220615</Col>
            <Col id="GOODS_CD">GL005</Col>
            <Col id="TOT_RT">NaN</Col>
        </Row>
        <Row>
            <Col id="BS_DT">20220615</Col>
            <Col id="GOODS_CD">GL005</Col>
            <Col id="TOT_RT">NaN</Col>
        </Row>
        <Row>
            <Col id="BS_DT">20220615</Col>
            <Col id="GOODS_CD">GL005</Col>
            <Col id="TOT_RT">NaN</Col>
        </Row>
        <Row>
            <Col id="BS_DT">20220615</Col>
            <Col id="GOODS_CD">GL005</Col>
            <Col id="TOT_RT">NaN</Col>
        </Row>
        <Row>
            <Col id="BS_DT">20220615</Col>
            <Col id="GOODS_CD">GL005</Col>
            <Col id="TOT_RT">NaN</Col>
        </Row>
        <Row>
            <Col id="BS_DT">20220615</Col>
            <Col id="GOODS_CD">GL005</Col>
            <Col id="TOT_RT">NaN</Col>
        </Row>
        <Row>
            <Col id="BS_DT">20220615</Col>
            <Col id="GOODS_CD">GL005</Col>
            <Col id="TOT_RT">NaN</Col>
        </Row>
        <Row>
            <Col id="BS_DT">20220615</Col>
            <Col id="GOODS_CD">GL005</Col>
            <Col id="TOT_RT">NaN</Col>
        </Row>
        <Row>
            <Col id="BS_DT">20220615</Col>
            <Col id="GOODS_CD">GL005</Col>
            <Col id="TOT_RT">NaN</Col>
        </Row>
        <Row>
            <Col id="BS_DT">20220615</Col>
            <Col id="GOODS_CD">GL005</Col>
            <Col id="TOT_RT">NaN</Col>
        </Row>
        <Row>
            <Col id="BS_DT">20220615</Col>
            <Col id="GOODS_CD">GL005</Col>
            <Col id="TOT_RT">NaN</Col>
        </Row>
    </Rows>
</Dataset>

'WORK > JavaScript' 카테고리의 다른 글

isFinite()  (2) 2024.12.29
[xplatform] substring 사용하기  (1) 2022.07.11
날짜 형식 바꿔서 두개의 날짜 사이의 일수를 구하기  (0) 2021.06.07

먼저 완성한 코드를 올리고, 밑에 세부로 나누어서 설명해보려 한다.
내가 해야 할 일은 기존에 쓰던 날짜에 오늘날짜를 빼서 값이 10 이상이면 줄의 색이 바뀌는 일을 하였다.
간단히 말하자면, (오늘날짜 - 반납일자 >= 10) 이면 grid의 줄색상 바꾸기.


trStyleClass: function(){
console.log("@@@@@@@@@@@@반납일자 : "+ this.item.DAY1); //@@@@@@@@@@@@반납일자 : 20210325
//DAY1는 yyyymmdd 형식으로 DB에 저장됨
/*오늘 날짜*/
var date = new Date();
var year = date.getFullYear();
var month = new String(date.getMonth()+1);
var day = new String(date.getDate());
/*month와 day가 한자리 수일때 0 채워주기*/
if(month.length == 1){
month = "0"+month;
}
if(day.length == 1){
day = "0"+day;
}
var today_date = (year+"-"+month+"-"+day);
console.log(">>>>>>>>>>>>>>>>>오늘 : "+today_date); //>>>>>>>>>>>>>>>>>오늘 : 2021-06-07

/*반납일자 형식 yyyymmdd에서 yyyy-mm-dd 바꾸기*/
var ds = this.item.DAY1;
var start_String = ds.substr(0,4)+"-"+ds.substr(4,2)+"-"+ds.substr(6,2);
console.log(">>>>>>>>>>>>>>>>>>반납일자 yyyy-mm-dd : "+start_String); //>>>>>>>>>>>>>>>>>>반납일자 yyyy-mm-dd : 2021-03-25
/*"-" 기준으로 날짜 분리*/
var start_Array = start_String.split("-"); //반납일자 쪼개기
jsvar end_Array = today_date.split("-"); //오늘날짜 쪼개기

var start_date = new Date(start_Array[0], Number(start_Array[1])-1, start_Array[2]);
var end_date = new Date(end_Array[0], Number(end_Array[1])-1, end_Array[2]);
var between_day = Math.ceil(((today_date.getTime()) - (this.item.DAY1.getTime()))/(10000*3600*24));

console.log("@@@@@@@@@@@@@@@@ start_date : "+start_date); //@@@@@@@@@@@@@@@@ start_date : Thu Mar 25 2021 00:00:00 GMT+0900 (대한민국 표준시)
console.log("@@@@@@@@@@@@@@@@ end_date : "+end_date); //@@@@@@@@@@@@@@@@ end_date : Mon Jun 07 2021 00:00:00 GMT+0900 (대한민국 표준시)
console.log("@@@@@@@@@@@@@@@@ 오늘 - 반납일자 between_day : "+between_day); //@@@@@@@@@@@@@@@@ 오늘 - 반납일자 between_day : 74

return (between_day >= 10) ? "grid-row-24" : ""; //(오늘날짜 - 반납일자 >= 10) 색상 지정
},



느낀점 >>>
점심식사 후에 안쉬고 이것만 내리 붙잡고 있었다. 처음에 yyyymmdd로 하였을때는 자꾸 반납날짜랑 오늘날짜 사이의 뺄셈이 NaN로 나오고 수정해봤더니 각 날짜들이 invalid data 라고 나오고 난리 법석이었다.
인터넷을 찾아보니까 다들 '-'문자를 기준으로 날짜를 자르길래 그거 안따라 하고 해보려다가 결국은 따라서 하게 되었다.
이 코드에서 나름대로 핵심은
오늘 날짜 만들기
yyyymmdd를 yyyy-mm-dd로 만들기
이다. 암튼 성공적으로 결과가 나왔고, 엄청난 성취감을 느꼈다.오후 업무 시간을 다 쏟아 부어서 이거 하나 했지만, 성공 당시의 기쁨이 굉장히 좋았다.

그럼 해설 시작>>
(1)
먼저 날짜 형식이 어떤지 확인을 하였다. 나는 DAY1의 날짜가 필요하니까
console.log("@@@@@@@@@@@@반납일자 : "+ this.item.DAY1); //@@@@@@@@@@@@반납일자 : 20210325
DAY1은 yyyymmdd 형식으로 DB에 저장되있었고, 20210325 로 확인된다.


(2)
오늘 날짜는 내가 필요한만큼만 만들어야 한다. 나는 yyyy-mm-dd가 필요로 하니까, 년월일 선언해서 가져오고, 월과 일이 한자리 수일경우 0을 추가해서 기존에 가지고 있던 날짜과 맞추어 준다.
/*오늘 날짜*/
var date = new Date();
var year = date.getFullYear();
var month = new String(date.getMonth()+1);
var day = new String(date.getDate());
/*month와 day가 한자리 수일때 0 채워주기*/
if(month.length == 1){
month = "0"+month;
}
if(day.length == 1){
day = "0"+day;
}
/*yyyy-mm-dd 형식으로 만들주기*/
var today_date = (year+"-"+month+"-"+day);
console.log(">>>>>>>>>>>>>>>>>오늘 : "+today_date); //>>>>>>>>>>>>>>>>>오늘 : 2021-06-07
오늘 날짜가 원하는 대로 잘 만들어진 것을 확인 할 수 있다.


(3)
/*반납일자 형식 yyyymmdd에서 yyyy-mm-dd 바꾸기*/
var ds = this.item.DAY1;
var start_String = ds.substr(0,4)+"-"+ds.substr(4,2)+"-"+ds.substr(6,2);
console.log(">>>>>>>>>>>>>>>>>>반납일자 yyyy-mm-dd : "+start_String); //>>>>>>>>>>>>>>>>>>반납일자 yyyy-mm-dd : 2021-03-25
기존에 가지고 있던 반납일자형식이 yyyymmdd에서 yyyy-mm-dd로 바꾸어 주었다.
처음에는 2번 오늘날짜를 yyyymmdd형식으로 만든 후에 사용하려고 했는데 인터넷 보면서 나름대로 해봤지만 잘 안되서, 그냥 인터넷에 나와있는데로 yyyymmdd를 yyyy-mm-dd 형식으로 만든 후에 자르기를 선택했다.


(4)
/*"-" 기준으로 날짜 분리*/
var start_Array = start_String.split("-"); //반납일자 쪼개기
var end_Array = today_date.split("-"); //오늘날짜 쪼개기
반납일자와 오늘날짜 둘 다 yyyy-mm-dd형식이기 때문에 - 문자 기준으로 자르도록 하였다.


(5)
var start_date = new Date(start_Array[0], Number(start_Array[1])-1, start_Array[2]);
var end_date = new Date(end_Array[0], Number(end_Array[1])-1, end_Array[2]);
var between_day = Math.ceil(((today_date.getTime()) - (this.item.DAY1.getTime()))/(10000*3600*24));

console.log("@@@@@@@@@@@@@@@@ start_date : "+start_date); //@@@@@@@@@@@@@@@@ start_date : Thu Mar 25 2021 00:00:00 GMT+0900 (대한민국 표준시)
console.log("@@@@@@@@@@@@@@@@ end_date : "+end_date); //@@@@@@@@@@@@@@@@ end_date : Mon Jun 07 2021 00:00:00 GMT+0900 (대한민국 표준시)
console.log("@@@@@@@@@@@@@@@@ 오늘 - 반납일자 between_day : "+between_day); //@@@@@@@@@@@@@@@@ 오늘 - 반납일자 between_day : 74

start_date 안에는 반납일자를 쪼갠것을 배열에 넣고,
end_date 안에는 오늘날짜 쪼갠것을 넣었다.
그리고 between_day는 두 개 날짜 사이의 일을(빼기) 구하였다.
console.log를 사용하여 각 데이터를 확인할 수 있다.


(6)
return (between_day >= 10) ? "grid-row-red" : ""; //(오늘날짜 - 반납일자 >= 10) 색상 지정

5번에서 확인한것 과 같이 두 날짜 사이는 10일 이상인 74일 이므로 grid의 줄 색깔이 바뀔것이다.

'WORK > JavaScript' 카테고리의 다른 글

isFinite()  (2) 2024.12.29
[xplatform] substring 사용하기  (1) 2022.07.11
중첩반복문 알파벳 증가 시키기( for문과 charAt() )  (0) 2022.06.16

+ Recent posts