js中创建Map集合

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;
}

原文地址:https://www.cnblogs.com/xielinjiang/p/9146220.html

时间: 2024-10-08 12:33:18

js中创建Map集合的相关文章

ES6中的Map集合(与java里类似)

Set类型可以用来处理列表中的值,但是不适用于处理键值对这样的信息结构.ES6也添加了Map集合来解决类似的问题 一.Map集合 JS的对象(Object),本质上是键值对的集合(Hash结构),但是传统上只能用字符串当作键.这给它的使用带来了很大的限制 为了解决这个问题,ES6提供了Map数据结构.它类似于对象,也是键值对的集合,但是"键"的范围不限于字符串,各种类型的值(包括对象)都可以当作键.也就是说,Object结构提供了"字符串-值"的对应,Map结构提供

java中的map集合

import java.util.Collection; import java.util.HashMap; import java.util.Iterator; import java.util.Map; import java.util.Set; public class MapTest { /**关于map集合的常用方法  * void clear(); 清空Map boolean isEmpty();判断该集合是否为空 int size(); 获取Map中键值对的个数.  Object 

js中创建html标签、加入select下默认的option的value和text、删除select元素节点下全部的OPTION节点

<pre name="code" class="java"> jsp 中的下拉框标签: <s:select name="sjx" id="sjx" list="sjxList" listKey="BM" listValue="MC" size="20" cssStyle="width:100%;height:70px;

js中创建html标签、添加select下默认的option的value和text

<pre name="code" class="java"> jsp 中的下拉框标签: <s:select name="sjx" id="sjx" list="sjxList" listKey="BM" listValue="MC" size="20" cssStyle="width:100%;height:70px;

js中的Map

/* * js中的map */ function myJsMap() { // 定义myMap,并添加值 var myMap = {}; myMap["key2"] = "value2"; myMap["key1"] = "value1"; myMap["key3"] = "value3"; // 判断某个值是否在myMap中 if ("key2" in myMap)

js中的Map对象的简单示例

es6提供一个对象Map, 其功能类似于java中的Map, 下面是java中的Map和js中的Map的简单对比: js中的Map.set()相当于java中的Map.put(), js中的Map.size相当于java中的Map.size()://在js中size是属性,在Map中size()是方法. <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"

使用 Raspberry Pi 上的传感器在 Node.js 中创建一个 IoT Bluemix 应用程序

先决条件 一个IBM Bluemix 帐号,一个 Raspberry Pi 2 或 3,一个 PIR 运动传感器 适用于本文的 Github 存储库 如果您是一位精明的 Bluemix 开发人员,您可能只想看看如何在 node.js 中与 IoT 建立连接,或者只想了解如何从此 github 存储库中拉取我的代码. git clone https://github.com/nicolefinnie/iot-nodejs-tutorial 以下是实现与 IBM IoT 平台连接在一起的 4 个 R

JS中的Map和Set

使用iterable内置的forEach方法 var a = ['A', 'B', 'C']; a.forEach(function (element, index, array) { // element: 指向当前元素的值 // index: 指向当前索引 // array: 指向Array对象本身 alert(element); }); Set与Array类似,但Set没有索引,因此回调函数的前两个参数都是元素本身: var s = new Set(['A', 'B', 'C']); s.

键盘录入一个文件夹路径,统计该文件夹(包含子文件夹)中每种类型的文件及个数,注意:用文件类型(后缀名,不包含.(点),如:&quot;java&quot;,&quot;txt&quot;)作为key, 用个数作为value,放入到map集合中,遍历map集合

package cn.it.zuoye5; import java.io.File;import java.util.HashMap;import java.util.Iterator;import java.util.Map;import java.util.Scanner;import java.util.Set; /** 键盘录入一个文件夹路径,统计该文件夹(包含子文件夹)中每种类型的文件及个数,注意:用文件类型(后缀名,不包含.(点),如:"java","txt&qu