-
2022-01-05 11:31:11
function createMap(){ //初始化map_,给map_对象增加方法,使map_像Map var map_ = new Object(); map_.put = function(key, value) { map_[key+'_'] = value; }; map_.get = function(key) { return map_[key+'_']; }; map_.remove = function(key) { delete map_[key+'_']; }; map_.keyset = function() { var ret = ""; for(var p in map_) { if(typeof p == 'string' && p.substring(p.length-1) == "_") { ret += ","; ret += p.substring(0,p.length-1); } } if(ret == "") { return ret.split(","); } else { return ret.substring(1).split(","); } }; return map_; }
更多相关内容 -
js创建map集合及调用
2019-03-13 16:55:41由于业务需求碰到js向Android传递json字符串,但是自己拼接json有些麻烦,就想着能不能先实现map,然后再转换成json.话不多说直接上代码 function Map() { /** 存放键的数组(遍历用到) */ this.keys = new Array();...由于业务需求碰到js向Android传递json字符串,但是自己拼接json有些麻烦,就想着能不能先实现map,然后再转换成json.话不多说直接上代码
function Map() { /** 存放键的数组(遍历用到) */ this.keys = new Array(); /** 存放数据 */ this.data = new Object(); /** * 放入一个键值对 * @param {String} key * @param {Object} value */ this.put = function(key, value) { if(this.data[key] == null){ this.keys.push(key); } this.data[key] = value; }; /** * 获取某键对应的值 * @param {String} key * @return {Object} value */ this.get = function(key) { return this.data[key]; }; /** * 删除一个键值对 * @param {String} key */ this.remove = function(key) { this.keys.remove(key); this.data[key] = null; }; /** * 遍历Map,执行处理函数 * * @param {Function} 回调函数 function(key,value,index){..} */ this.each = function(fn){ if(typeof fn != 'function'){ return; } var len = this.keys.length; for(var i=0;i<len;i++){ var k = this.keys[i]; fn(k,this.data[k],i); } }; /** * 获取键值数组(类似<a href="http://lib.csdn.net/base/java" class='replace_word' title="Java 知识库" target='_blank' style='color:#df3434; font-weight:bold;'>Java</a>的entrySet()) * @return 键值对象{key,value}的数组 */ this.entrys = function() { var len = this.keys.length; var entrys = new Array(len); for (var i = 0; i < len; i++) { entrys[i] = { key : this.keys[i], value : this.data[i] }; } return entrys; }; /** * 判断Map是否为空 */ this.isEmpty = function() { return this.keys.length == 0; }; /** * 获取键值对数量 */ this.size = function(){ return this.keys.length; }; /** * 重写toString */ this.toString = function(){ var s = "{"; for(var i=0;i<this.keys.length;i++,s+=','){ var k = this.keys[i]; s += '"'+k+'"'+":"+'"'+this.data[k]+'"'; } s+="}"; s = s.substr(0, s.length - 2); s+="}"; return s; }; }
可以单独写到一个js文件中然后再其它js或者HTML文件中调用
//调用封装好的map var map_ = new Map(); map_.put("name","张三"); //map转字符串 map_.toString()
-
js中创建Map集合
2021-03-09 04:30:26function Map() { //创建一个map集合//这里定义数据结构var struct = function(key, value) {this.key = key;this.value = value;}//这是添加的方法var put = function(key, value){for (var i = 0; i < this.arr...function Map() { //创建一个map集合
//这里定义数据结构
var struct = function(key, value) {
this.key = key;
this.value = value;
}
//这是添加的方法
var put = function(key, value){
for (var i = 0; i < this.arr.length; i++) {
if ( this.arr[i].key === key ) {
this.arr[i].value = value;
return;
}
}
this.arr[this.arr.length] = new struct(key, value);
}
//获取的方法
var get = function(key) {
for (var i = 0; i < this.arr.length; i++) {
if ( this.arr[i].key === key ) {
return this.arr[i].value;
}
}
return null;
}
//这种是根据自己的需求来定义的方法
var getIndex = function(index){
if(this.arr.length-1>=index){
return this.arr[index].key;
}
return null;
}
//删除的方法
var remove = function(key) {
var v;
for (var i = 0; i < this.arr.length; i++) {
v = this.arr.pop();
if ( v.key*1 === key*1 ) {
continue;
}
this.arr.unshift(v);
}
}
//获取存储的数量
var size = function() {
return this.arr.length;
}
//判断是否为空
var isEmpty = function() {
return this.arr.length <= 0;
}
//清空
var toNull=function(){
this.arr=new Array();
}
//发布服务
this.arr = new Array();
this.get = get;
this.put = put;
this.toNull=toNull;
this.remove = remove;
this.getIndex =getIndex;
this.getValue=getValue;
this.size = size;
this.isEmpty = isEmpty;
}
-
js自定义Map集合
2020-11-11 11:53:18* MAP对象,实现MAP功能 * * 接口: * size() 获取MAP元素个数 * isEmpty() 判断MAP是否为空 * clear() 删除MAP所有元素 * set(key, value) 向MAP中增加元素(key, value) * remove(key) 删除指定KEY的元素,.../** * MAP对象,实现MAP功能 * * 接口: * size() 获取MAP元素个数 * isEmpty() 判断MAP是否为空 * clear() 删除MAP所有元素 * set(key, value) 向MAP中增加元素(key, value) * remove(key) 删除指定KEY的元素,成功返回True,失败返回False * get(key) 获取指定KEY的元素值VALUE,失败返回NULL * containsKey(key) 判断MAP中是否含有指定KEY的元素 * values() 获取MAP中所有VALUE的数组(ARRAY) * keys() 获取MAP中所有KEY的数组(ARRAY) * * 例子: * var map = new HashMap(); * * map.put("key", "value"); * var val = map.get("key") * …… * */ function HashMap() { /** * 存放数据 */ this.data = new Object(); /** * 放入一个键值对 * @param {String} key * @param {Object} value */ this.set = function(key, value){ this.data[key] = value; }; /** * 获取某键对应的值 * @param {String} key * @return {Object} value */ this.get = function(key){ return this.containsKey(key)?this.data[key]:null; }; /** * 删除一个键值对 * @param {String} key */ this.remove = function(key){ if(this.containsKey()){ return delete this.data[key]; } return false; }; /** * 遍历Map,执行处理函数 * * @param {Function} 回调函数 function(key,value,index){..} */ this.each = function(fn){ if(typeof fn != 'function'){ return null; } var obj = this.keySet(); for(var i=0;i<obj.length;i++){ var k = obj[i]; fn(k,this.data[k],i); } }; /** * 获取键值数组(类似Java的entrySet()) * @return 键值对象{key,value}的数组 */ this.entrys = function(){ var obj = this.keySet(); var entrys = new Array(obj.length); for (var i =0; i < obj.length; i++) { entrys[i] = { key : obj[i], value : this.data[obj[i]] }; } return entrys; }; /** * 判断Map是否为空 */ this.isEmpty = function(){ var flag = this.size()>0 ? true : false; return flag; }; /** * 获取键值对数量 */ this.size = function(){ var objLen = 0; for(var i in this.data){ objLen++; } return objLen; }; /** * 重写toString ,装成JSON格式 */ this.toString = function(){ var s = "["; var obj = this.keySet() ; for(var i=0;i<obj.length;i++,s+=','){ var k = obj[i]; s += "{'id':'" + k+"','value':'"+this.data[k]+"'}"; } s=s.substring(0, s.length-1); if(s!=""){ s+="]"; } return s; }; /** * 输出Value的值 */ this.values = function (){ var _values= new Array(); for(var key in this.data){ _values.push(this.data[key]); } return _values; }; /** * 获取keys */ this.keySet = function (){ var _keys = new Array(); for(var key in this.data){ _keys.push(key); } return _keys; }; /** * 判断MAP中是否含有指定KEY的元素 */ this.containsKey = function(_key){ return (_key in this.data); }; /** * 清空Map */ this.clear = function(){ this.data.length = 0; this.data = new Object(); }; }
-
JS实现Map集合的实现
2022-04-19 15:42:16JS实现Map集合的实现(自定义对象) /** * Simple Map * * * var m = new Map(); * m.put('key','value'); * ... * var s = ""; * m.each(function(key,value,index){ * s += index+":"+ key+"="+... -
如何在JavaScript中创建一个map集合
2018-01-16 10:03:551.首先在js里创建一个getMap()函数 代码如下: function getMap() {// 初始化map_,给map_对象增加方法,使map_像Map var map_ = new Object(); map_.put = function(key, value) { map_[key + '_'] = value;... -
js 创建类似java map集合
2018-07-19 10:08:42// Map map = new HashMap(); var map = {}; // map.put(key, value); map[key] = value; // Object value = map.get(key); var value = map[key]; // boolean has = map.containsKey(key); var has = key in..... -
js 替换 截取 字符(例如日期时间替换)、js中创建map集合
2019-08-28 21:57:25第一个参数是想要替换的内容 第二个参数“g”是匹配全部的意思,也可以换成"t",就是匹配第一个 ------------------------ js中创建map集合 var map = {} //可以定全局变量 map[key] = value; // map.put(key, ... -
js中的Map集合类型
2021-08-31 00:25:56Map是一种新的集合类型,为ECMAScript语言带来了真正的键/值存储机制,Map的大多数特性都可以通过Obeject类型实现,但二者之间还是存在一些细微的差异。 6.4.1.基本API 使用new关键字和Map构造函数可以创建一个空... -
js 中的 map 集合使用。
2022-07-28 16:02:03js 中的 map集合使用。 -
JavaScript------Set集合和Map集合
2022-06-21 19:42:41创建Set集合,Set集合的常用用方法,遍历Set集合所有的元素,通过数组创建Set集合,用Set集合...创建Map集合,Map集合的属性,Map集合的常用方法,遍历Map集合的方法,将Map集合转为数组,对map中的元素进行过滤...... -
JavaScript --- Map集合结构详解
2018-11-06 21:48:32Map 对象保存键值对。任何值(对象或者原始值) 都可以作为一个键或一个值。 语法 new Map([iterable]) 参数 iterable Iterable 可以是一个数组或者其他 iterable 对象,其元素或为键值对,或为两个元素的数组。 每个... -
Java实现过滤掉map集合中key或value为空的值示例
2020-08-27 07:37:44主要介绍了Java实现过滤掉map集合中key或value为空的值,涉及java针对map的简单遍历、判断、移除等相关操作技巧,需要的朋友可以参考下 -
Map集合的简单使用
2022-04-07 17:30:34Map集合的简单使用 -
angular中创建及其遍历map集合
2019-07-31 15:23:58在angular中使用map好像不太好用,或者我没用对方法,不过可以使用对象来代替map集合,达到的效果是一样的,代码量差不多,参考链接 -
js Map用法
2022-03-01 17:20:18作为 ECMAScript 6 的新增特性,Map 是一种新的集合类型,为这门语言带来了真正的键/值存储机制。Map 的大多数特性都可以通过 Object 类型实现,但二者之间还是存在一些细微的差异。具体实践中使用哪一个,还是值得... -
Map集合类型总结,常见Map集合有哪些?他们的优缺点分别是什么?
2021-08-09 19:20:14Map它属于一种独特的集合结构,他储存的时候有一对的键值对,键值对相互映射,可以根据key键(唯一)可以找到value值 那我们之前学习过的数组、集合等,他们最多也是通过内容或者下标来获取相应的值,但是Map可以... -
JS11:Map和Set集合
2022-03-28 11:40:16Map Map 对象存有键值对,其中的键可以是任何数据类型。 ... 创建新的 Map 对象。 set() 为 Map 对象中的键设置值。 get() 获取 Map 对象中键的值。 -
JavaScript中的Array和Map集合对象 (遍历Array和Map)
2021-03-13 04:51:15JavaScript中的Array和Map集合对象1.Array用于在单个变量中存储多个值创建new Array();new Array(size);new Array(element0, element1, ..., elementn);长度arr.length;设置或返回数组中元素的数目。赋值var arr = ... -
js的Set和Map集合
2020-10-28 21:30:14//创建一个没有任何内容的set集合 let set2 = new Set("LOLFPXIGRNGSN");//具有初始化数值的set集合 可以看到打印出来的结果没有重复的字母 属性(由于属性有很多,这里只介绍常用的几种) - add 添加到set的... -
33.JavaScript映射与集合(Map、Set)数据类型基础知识介绍与使用
2022-06-11 21:40:45为了更好的应对现实生产中的情况,我们还需要学习更多的数据类型:映射()和集合()。是一个键值对构成的集合,和对象非常相似,都是由一个名称对应一个值组成的。和对象区别在于,的键可以采用任何类型的数据,而... -
js创建map对象并赋值
2019-01-17 14:00:45var map = {}; map.keyname = valuename; map[keyname] = valuename; 例如: var map = {}; map.key1 = "aaa"; map.key2 = "bbb"; map.key3 = "ccc"; map['key4'] = "ddd"... -
ES6的map集合
2022-01-08 12:40:25一、map集合 1、属性:size 2、基本方法 (1)set() (2)get() (3)has() (4)delete() (5)clear() 3、遍历方式 (1)keys() (2)values() (3)entries() (4)forEach() 4、转为数组 二、... -
visualization-js:使用 ArcGIS API for JavaScript 创建的数据可视化示例集合
2021-07-10 01:20:41展示如何使用 ArcGIS API for JavaScript 创建各种可视化效果的示例集合。 要探索这些示例,您可以: 单击下面的任何缩略图以查看实时示例 点击缩略图下的标题查看代码 样品 基本的 显示唯一值 增强选项 信息... -
javascript Map集合取键值对
2019-06-18 16:53:21几乎搜遍了网上所有js Map 遍历的方法:但大部分都是 for (var key in map) { console.log("testin"); console.log(key + "," + map[key]); } $.each(map,function (key, value) { consol... -
js中Map的用法
2022-04-24 09:22:23js中Map的用法 Map 我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客: 是一个键值对的集合,类似于Object; 作为构造函数,需要... -
map集合
2020-04-27 21:42:56map集合的意义 map集合专门用于存储多个键值对数据。 诶,明明我们可以用对象来做这件事情,为什么还要用map集合呢? 对象存储键值对的问题 键名只能是字符串 获取数据的数量不方便 键名容易跟原型上的名称冲突 ... -
List集合和Map集合方法详解
2021-08-14 17:47:40集合 Collection集合 Collection 主要使用的List 和 Set List有序集合可以有重复 Set无序集合没有重复没有索引 主要使用方法 //添加元素: boolean add(E e) //移除指定元素 boolen remove(Object o) //清楚... -
JavaScript中的Array和Map集合对象
2019-09-22 22:15:54JavaScript中的Array和Map集合对象 1.Array 用于在单个变量中存储多个值 创建 new Array(); new Array(size); new Array(element0, element1, ..., elementn); 长度 arr.length;设置或返回数组中元素的数目。 ...