【javascript】如何在Javascript中创造map对象?
来源:互联网 发布:手机淘宝登陆连接失败 编辑:程序博客网 时间:2024/05/17 05:52
在讲解这篇文章之前,我们都知道Map是一个存放键值对形式的集合,而Javascript中却没有此类型的函数API。那么能不能利用Array来存储有键值对形式的对象呢?下面将展示在JS中如何创建MAP对象。
/** * 创建map类,用于存储键-值,一一对应起来 */function Map(){/** * 定义map类中的元素结构,并初始化 */var struct = function(key,value){this.key = key;this.value = value;}/** * 定义put方法,添加元素 */var put = function(key,value){for(var i = 0; i < this.arr.length; i++){ //遍历map中的所有元素if(this.arr[i].key === key){ // 此map不能添加已经存在的元素this.arr[i].value == value;return false;}}this.arr[this.arr.length] = new struct(key,value);}/** * 定义get方法,根据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;}/** * 定义remove方法,用于删除指定key的元素 */var remove = function(key){var lastProp;for(var i = 0; i < this.arr.length; i++){lastProp = this.arr.pop(); //移除最后一个元素并返回该元素值if(lastProp === key){continue;}this.arr.unshift(lastProp); //将一个或多个新元素添加到数组开始,数组中的元素自动后移,返回数组新长度}}var size = function(){return this.arr.length;}this.arr = [];this.put = put;this.get = get;this.remove = remove;this.size = size;}当然,Java中的Map对象是无序的键值对形式的集合,所以此对象并非真正意义上的Map对象,我们构造此对象,就是做数据载体用.合理的运用一些Javascript中的原型函数,就能构想我们想要实现的功能方法.
1 0
- 【javascript】如何在Javascript中创造map对象?
- JavaScript创造对象
- 如何在javascript中获取dom对象
- 在javascript中,如何处理FSharpOption对象
- 在JavaScript中实现自己的Map对象
- 如何在 javascript / js 中 建立一个map
- 如何在JavaScript中创建一个map集合
- javaScript中如何定义对象
- JavaScript 中如何打印对象
- 在Javascript中定义对象
- 在JavaScript中创建对象
- 在JavaScript中创建对象
- 在JavaScript中自定义对象
- Javascript的Map对象
- Javascript map 如何实现
- Javascript map如何实现
- 在Java中如何遍历Map对象
- 在Java中如何遍历Map对象
- Android SurfaceView双缓存
- 如何分析APP功能需求、结构?
- 算法设计技巧--离散暴力将时间将为O(0);
- 代码大全:启程
- Java中的接口与抽象类的区别
- 【javascript】如何在Javascript中创造map对象?
- 三分查找
- 取得软件设计师资格感受
- APP应用中发短信
- python 2.6 升级到 2.7
- 相容方程
- 搜集整理了Object-C现阶段学习中常见的问题
- 关于Nodejs中使用Log4js 解决方案
- Caffe Installation