https://code.google.com/p/suas-map-server/source/browse/trunk/+suas-map-server/suas4/cssjs/lib/jquery/js/plugin/jQuery.Hashtable-1.1.js


특별한 설명은 필요없을 듯..


사용법 


해쉬테이블 생성 : var ht = new jQuery.Hashtable();

키-값 추가 : ht.add("item1","hello");

값 얻기 : var val = ht.get("item1");

키 삭제 : ht.remove("item1");

키가 있는지 여부 : ht.containsKey("item1");

값이 있는지 여부 : ht.containsValue("hello"); 

키나 값이 있는지 여부 : ht.contains("item1"); / ht.contains("hello");

해쉬테이블 모두 지우기 : ht.clear();

해쉬테이블 크기 구하기 : ht.size();

해쉬테이블이 비어있는지 여부 : ht.isEmpty();


 

단, 원본 소스상에서 remove에 해당 키가 없으면 throw를 던지는데.. 굳이 그럴 필요는 없을 듯..

키가 있어서 삭제하면 리턴값 true, 키가 없으면 false 를 반환하는 걸로 수정해서 쓰는게 좋겠다.


this.remove = function(key) { if(this.containsKey(key)) { delete this.items[key]; this.itemsCount--; } else throw "key '"+key+"' does not exists." }



=>


this.remove = function(key)

        {

                if(this.containsKey(key))

                {

                        delete this.items[key];

                        this.itemsCount--;

return true;

                }

                else

                        return false;

        }


mongodb의 objectid에 대한 설명은 http://docs.mongodb.org/manual/reference/object-id/


12byte의 길이를 가지며 507f1f77bcf86cd799439011 형식의 값을 가진다.

각 byte는 아래와 같이 구해진다.


  • a 4-byte value representing the seconds since the Unix epoch,
  • a 3-byte machine identifier,
  • a 2-byte process id, and
  • a 3-byte counter, starting with a random value.


 

자바스크립트 상에서 구현하기 위해 아래 사이트를 방문하자.


https://github.com/justaprogrammer/ObjectId.js


이곳에서 자바스크립트 파일 Objectid.js 를 다운받고, objectid 값을 구할 수 있다.


<script type="text/javascript" src="Objectid.js"></script>


var objectId = new ObjectId();

objectId.toString(); <= 이 값임..


특정 값이 undefined 인지를 체크하기 위해서는 


var a;

if (typeof a == "undefined") {} => true

if (a == undefined) {} => true


null 인지를 체크하기 위해서는


var b = null;

if (b == null) {} => true


위와 같이 정확하게 값을 체크하는데 사용될 수 있다.


 

하지만, undefined와 null은 논리연산에서는 false로 처리되므로 아래처럼 간단하게 체크하면 되겠다.


var a;

if (a) {} => false

if (!a) {} => true


var b = null;

if (b) {} => false

if (!b) {} => true


undefined와 null을 철저히 체크하는 경우가 아니라면, if (!a) {} 처럼 간단히 사용하면 되겠다.


if (a != undefined && a != null) {}

if (a != undefined && !a) {}


위 두가지 모두 if (!a) {} 와 동일하다.


+ Recent posts