답변:
이는 + 단항 연산자이며 다음과 같습니다.
function(){ return Number(new Date); }
getTime
날짜 객체에 정의 된 메소드 를 사용하지 않습니까?!
.getTime()
항상 그렇게 할 것입니다.
Date.now()
있으며 이는 날짜와 시간을 밀리 초 단위로 얻는 기본 방법입니다.
JavaScript는 느슨하게 입력되었으므로 특정 상황에서 유형 강제 / 변환을 수행합니다.
http://blog.jeremymartin.name/2008/03/understanding-loose-typing-in.html
http://www.jibbering.com/faq/faq_notes/type_convert.html
다른 예 :
>>> +new Date()
1224589625406
>>> +"3"
3
>>> +true
1
>>> 3 == "3"
true
JavaScript 날짜는 문자열로 작성할 수 있습니다.
2015 년 9 월 10 일 목요일 12:02:54 GMT + 0530 (IST)
또는 숫자로 :
1441866774938
숫자로 작성된 날짜는 1970 년 1 월 1 일 00:00:00 이후 밀리 초 수를 지정합니다.
귀하의 질문에 따르면 할당 연산자 '='뒤에 '+'를 추가하고 Date를 동일한 숫자 값으로 변환하면 문제가 해결됩니다.
Number (new Date ())와 같은 Number () 함수를 사용하여 동일하게 달성 할 수 있습니다.
var date = +new Date(); //same as 'var date =number(new Date());'
더 많은 정보를 제공하기 위해 :
두 날짜의 시차를 찾으려면 다음과 같이하십시오.
var d1 = new Date("2000/01/01 00:00:00");
var d2 = new Date("2000/01/01 00:00:01"); //one second later
var t = d2 - d1; //will be 1000 (msec) = 1 sec
typeof t; // "number"
이제 d1-0의 유형을 확인하면 숫자이기도합니다.
t = new Date() - 0; //numeric value of Date: number of msec's since 1 Jan 1970.
typeof t; // "number"
+는 날짜를 숫자로 변환합니다.
typeof (+new Date()) //"number"
그러나 유사하게 취급 되지0 + new Date()
는 않습니다 . 문자열로 연결됩니다.
0 + new Date() // "0Tue Oct 16 05:03:24 PDT 2018"
다음과 정확히 동일합니다.
function () {return 0 + new Date; }
그 결과는 다음과 같습니다.
function () {return new Date (). getTime (); }
new Date/1