GitHub 뒤지기 - 3
hsol / JsQuery.js
- 소개
오늘도 hsol의 Git 을 들고왔다.
사실상 이 포스팅 덕분에 개발에 재미가 붙은 듯. 요새 업무가 좀 널널 해지기도 했고
이 라이브러리를 사용하면 MySQL, MS-SQL, ORACLE 등의
WHERE, ORDER BY 절과 같이 전체 데이터를 필터링 할 수 있다.
민감한 데이터엔 사용하지 못하겠지만 미리 가져온 데이터에서 검색이 가능하니
"검색결과에서 재검색" 등과같은 기능을 만들 때 유용하지 않겠나 싶다.
- 구성
JsQuery.js
JsQuery.min.js
- 사용법 (by 한솔)
먼저 JsQuery.js 또는 JsQuery.min.js 파일을 페이지에 추가해준다.
기본적으로 set 메소드 2개, get메소드 3개가 존재하는데
setObject(object object) 는 필터링할 object(JSON Array) 를 세팅해주고
setQuery(string query) 는 필터링 규칙을 쿼리형태로 넣어준다.
이 두가지 과정을 new 키워드를 통해 클래스 형태로 사용 할 수도 있다.
getObject() 는 세팅한 object(JSON Array) 를 리턴해주며
getQuery() 또한 세팅한 쿼리를 리턴해준다.
오버로딩 되어있는 getResult() 또는 getResult(object object, string query) 가 원하는 결과를 출력하는 메소드인데, 사용 시 object(JSON Array) 를 쿼리를 거쳐 object 형태로 리턴해준다.
쿼리는 다음과 같이 구성된다.
{검색할 컬럼} WHERE {조건문} ORDER {정렬될컬럼}
검색할 컬럼은 쉼표로 구분하여 입력해주면 된다.
조건문의 경우 javascript 엔진으로 돌아가므로 javascript 조건문 그대로 써주면 된다.
정렬될 컬럼은 아직 한개만 허용되며 기본적으로 오름차순으로 되어있고 컬럼명 앞에 "-" 를 붙여주면 내림차순으로 정렬할 수 있다.
var testObject = [{head:1, tail:3},{head:5, tail:7},{head:9, tail:11}];
var testQuery = "head WHERE tail < 9 ORDER -head"
var jsQuery = new JsQuery(testObject, testQuery);
console.log(jsQuery.getResult());
> [{"head":5},{"head":1}]
해당 예시는 공식 예제 링크로 들어가면 볼 수 있다.
'it > programming' 카테고리의 다른 글
ELECTRON, 웹베이스 데스크탑 앱 간단 튜토리얼 (0) | 2016.07.06 |
---|---|
jsonp, cors 따로 세팅 없이 cross domain 문제 해결하기 (1) | 2016.05.26 |
[bideo.js] GitHub 뒤지기 2 (1) | 2016.05.25 |