Js中自定义(创建)Map以及对应方法
2015-06-03 16:14
525 查看
function Map() {
this.container = new Object();
}
Map.prototype.put = function(key, value) {
this.container[key] = value;
}
Map.prototype.get = function(key) {
return this.container[key];
}
Map.prototype.keySet = function() {
var keyset = new Array();
var count = 0;
for ( var key in this.container) {
if (key == 'extend') {
continue;
}
keyset[count] = key;
count++;
}
return keyset;
}
Map.prototype.size = function() {
var count = 0;
for ( var key in this.container) {
if (key == 'extend') {
continue;
}
count++;
}
return count;
}
Map.prototype.remove = function(key) {
delete this.container[key];
}
Map.prototype.toString = function() {
var str = "";
for ( var i = 0, keys = this.keySet(), len = keys.length; i < len; i++) {
str = str + keys[i] + "=" + this.container[keys[i]] + ";\n";
}
return str;
}
使用:
function getDatas(map){
var array = map.keySet();
var datas = "";
for(var i in array) {
if( i != 0){
datas += "&"+array[i]+"="+map.get(array[i])+"";
}else{
datas += ""+array[i]+"="+map.get(array[i])+"";
}
}
return datas;
}
this.container = new Object();
}
Map.prototype.put = function(key, value) {
this.container[key] = value;
}
Map.prototype.get = function(key) {
return this.container[key];
}
Map.prototype.keySet = function() {
var keyset = new Array();
var count = 0;
for ( var key in this.container) {
if (key == 'extend') {
continue;
}
keyset[count] = key;
count++;
}
return keyset;
}
Map.prototype.size = function() {
var count = 0;
for ( var key in this.container) {
if (key == 'extend') {
continue;
}
count++;
}
return count;
}
Map.prototype.remove = function(key) {
delete this.container[key];
}
Map.prototype.toString = function() {
var str = "";
for ( var i = 0, keys = this.keySet(), len = keys.length; i < len; i++) {
str = str + keys[i] + "=" + this.container[keys[i]] + ";\n";
}
return str;
}
使用:
function getDatas(map){
var array = map.keySet();
var datas = "";
for(var i in array) {
if( i != 0){
datas += "&"+array[i]+"="+map.get(array[i])+"";
}else{
datas += ""+array[i]+"="+map.get(array[i])+"";
}
}
return datas;
}
相关文章推荐
- 文件夹选择对话框 JS实现的两种方案
- CommonJS简介及模块标准
- ZH奶酪:JavaScript中的JSON.stringify() and JSON.parse()
- JS实现自适应宽度的Tag切换
- js格式化时间戳
- JavaScript版本的策略模式
- .net 开源 JavaScript 解析引擎
- JS setTimeout()学习笔记
- Chart.js报表制作
- JSON 数据列表取值
- JSONP
- JS简介
- 表单JS提交失效
- js操作json对象
- dom和json使用response 返回
- 解决json_encode中文UNICODE转码问题
- Js-加密
- JavaScript window.open()属性
- 由几道JS笔试题引发的知识点探究一——JS有哪些全局函数?
- 关于JSLink你不知道的五件事