반응형
출처: http://danceletter.blogspot.kr/2009/06/%ED%8A%B9%EC%88%98%EB%8B%A8%EC%96%B4-%EC%82%AC%EC%9A%A9%EC%9D%84-%ED%86%B5%ED%95%9C-%EA%B5%AC%EA%B8%80-%EA%B2%80%EC%83%89-%ED%8C%81.html
http://stackoverflow.com/questions/26370688/convert-a-julian-date-to-regular-date-in-javascript
7. daterange: 특정 기간동안 생성된 웹문서를 검색. 그런데 이건 julian date로 검색해야 되기 때문에 사용빈도가 거의 없을 듯 하다. 예를 들어 2009년 5월 30일부터 2009년 6월 2일로 설정하고 싶으면 daterange:20090530-20090602가 아니라 daterange:2454981.5-2454984.5로 해야함. 근데 소숫점이하는 잘 안먹는 거 같아 빼고 하는 게 좋은 듯. 이걸 언제바꿔서 찾냐고. 꼭 찾아야할 일이 있으면 바꿔서 하겠지만. daterange:2454981-2454984 "별다방미스김"
daterange: 를 사용하려면 julian date로 바꾸어야 제대로 검색이 된다.
이를 위해서 javascript에서 다음과 같은 코드를 통해 변환을 할 수 있다.
function dateToJulianNumber(d) {
// convert a Gregorian Date to a Julian number.
// S.Boisseau / BubblingApp.com / 2014
var x = Math.floor((14 - d.getMonth())/12);
var y = d.getFullYear() + 4800 - x;
var z = d.getMonth() - 3 + 12 * x;
var n = d.getDate() + Math.floor(((153 * z) + 2)/5) + (365 * y) + Math.floor(y/4) + Math.floor(y/400) - Math.floor(y/100) - 32045;
return n;
}
// assert September 30 2014 -> 2456931
console.log(dateToJulianNumber(new Date(2014,9,30)).toString());
function julianIntToDate(n) {
// convert a Julian number to a Gregorian Date.
// S.Boisseau / BubblingApp.com / 2014
var a = n + 32044;
var b = Math.floor(((4*a) + 3)/146097);
var c = a - Math.floor((146097*b)/4);
var d = Math.floor(((4*c) + 3)/1461);
var e = c - Math.floor((1461 * d)/4);
var f = Math.floor(((5*e) + 2)/153);
var D = e + 1 - Math.floor(((153*f) + 2)/5);
var M = f + 3 - 12 - Math.round(f/10);
var Y = (100*b) + d - 4800 + Math.floor(f/10);
return new Date(Y,M,D);
}
// assert 2456931 -> September 30 2014
console.log(julianIntToDate(2456931).toString());
반응형
'프로젝트 관련 조사 > 웹' 카테고리의 다른 글
PHP @의 의미 (0) | 2016.06.18 |
---|---|
구글 고급 검색(일명 구글해킹) 프로그램 설치 방법 (0) | 2016.05.17 |
구글 고급 검색(일명 구글해킹) 프로그램 개발 완료 (0) | 2016.05.05 |
JSON javascript 읽기 (0) | 2016.05.05 |
구글 해킹 참고자료 (0) | 2016.05.05 |