1. 程式人生 > >JS的Dictionary字典類

JS的Dictionary字典類

網上找的JS的字典類,可規避重複的項,可以移除項。特此記錄備忘。

/*字典 Dictionary類*/
function Dictionary() {
	this.add = add;
	this.datastore = new Array();
	this.find = find;
	this.remove = remove;
	this.showAll = showAll;
	this.count = count;
	this.clear = clear;
}

function add(key, value) {
	this.datastore[key] = value;
}

function find(key) {
	return this.datastore[key];
}

function remove(key) {
	delete this.datastore[key];
}

function showAll() {
	var str = "";
	for(var key in this.datastore) {
		str += key + " -> " + this.datastore[key] + ";  "
	}
	console.log(str);
}

function count() {
	/*var ss = Object.keys(this.datastore).length;
	console.log("ssss   "+ss);
	return Object.keys(this.datastore).length;*/
	/**/
	var n = 0;
	for(var key in Object.keys(this.datastore)) {
		++n;
	}
	console.log(n);
	return n;
}

function clear() {
	for(var key in this.datastore) {
		delete this.datastore[key];
	}
}