JS实现的自定义map方法示例

 更新时间:2019年05月17日 09:34:37   作者:longzhoufeng  
这篇文章主要介绍了JS实现的自定义map方法,结合实例形式分析了javascript自定义map相关的json数组定义、遍历、添加、删除、读取等相关操作技巧,需要的朋友可以参考下

本文实例讲述了JS实现的自定义map方法。分享给大家供大家参考,具体如下:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>www.jb51.net JS自定义map方法</title>
</head>
<body>
<script>
  window.onload = function() {
    function Map() {
      var obj = {};
      this.put = function(key, value) {
        obj[key] = value;//把键值绑定到obj对象上
      }
      //size方法,获取Map容器的个数
      this.size = function() {
        var count = 0;
        for(var attr in obj) {
          count++;
        }
        return count;
      }
      //get方法,根据key获取value的值
      this.get = function(key) {
        if(obj[key] || obj[key] === 0 || obj[key] === false) {
          return obj[key]
        } else {
          return null;
        }
      }
      //remove方法,删除方法
      this.remove = function(key) {
        if(obj[key] || obj[key] === 0 || obj[key] === false) {
          delete obj[key]
        }
      }
      //each方法,遍历方法
      this.eachMap = function(callBack) {
        for(var attr in obj) {
          callBack(attr, obj[attr])
        }
      }
    }
    var m = new Map();
    m.put('01', "aaa");
    m.put('02', "bbb");
    m.put('03', "ccc");
    m.put('04', "ddd");
    m.put('05', "eee");
    //alert(m.size());
    //alert(m.get('03'));
    // alert(m.remove('ccc'));
    m.eachMap(function(key ,value) {
      console.log(key)
      console.log(value)
    })
  }
</script>
</body>
</html>

运行结果:

感兴趣的朋友可以使用在线HTML/CSS/JavaScript代码运行工具http://tools.jb51.net/code/HtmlJsRun测试上述代码运行效果。

更多关于JavaScript相关内容感兴趣的读者可查看本站专题:《JavaScript数组操作技巧总结》、《JavaScript遍历算法与技巧总结》、《javascript面向对象入门教程》、《JavaScript数学运算用法总结》、《JavaScript数据结构与算法技巧总结》及《JavaScript错误与调试技巧总结

希望本文所述对大家JavaScript程序设计有所帮助。

相关文章

  • 微信小程序实现自定义底部导航

    微信小程序实现自定义底部导航

    这篇文章主要为大家详细介绍了微信小程序实现自定义底部导航,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-11-11
  • 微信小程序使用gitee进行版本管理

    微信小程序使用gitee进行版本管理

    这篇文章主要介绍了微信小程序使用gitee进行版本管理,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-09-09
  • javascript showModalDialog 多层模态窗口实现页面提交及刷新的代码

    javascript showModalDialog 多层模态窗口实现页面提交及刷新的代码

    javascript 多层模态窗口showModalDialog页面提交及刷新
    2009-11-11
  • Three.js使用OrbitControls后修改相机旋转方向无效解决办法

    Three.js使用OrbitControls后修改相机旋转方向无效解决办法

    three.js是用javascript写的基于webGL的第三方3D库,下面这篇文章主要给大家介绍了关于Three.js使用OrbitControls后修改相机旋转方向无效的解决办法,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2024-01-01
  • 详解ES6中的Map与Set集合

    详解ES6中的Map与Set集合

    这篇文章主要介绍了详解ES6中的Map与Set集合,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-03-03
  • JavaScript实现的背景自动变色代码

    JavaScript实现的背景自动变色代码

    这篇文章主要介绍了JavaScript实现的背景自动变色代码,涉及JavaScript数组操作结合定时函数实现修改页面元素样式的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-10-10
  • Javascript 构造函数 实例分析

    Javascript 构造函数 实例分析

    一般构造函数没有返回值,他们通过关键字this初始化对象,没有返回值。当然一个构造器允许返回一个对 象,如果这样的话 返回的对象将变成new 表达式的值,在这种情况下值为this的对象将抛弃
    2008-11-11
  • 微信小程序textarea层级过高的解决方法

    微信小程序textarea层级过高的解决方法

    这篇文章主要给大家介绍了关于微信小程序textarea层级过高问题的解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-03-03
  • 详解javaScript中Number数字类型的使用

    详解javaScript中Number数字类型的使用

    Number和Math都属于JavaScript中的内置对象,Number数字类型作为基础数据类型,我们在开发过程中会经常用到,包括数字精度的格式化,还有字符串转换成数字等操作。本文将详细讲解其用法,感兴趣的可以了解一下
    2022-04-04
  • 微信小程使用swiper组件实现图片轮播切换显示功能【附源码下载】

    微信小程使用swiper组件实现图片轮播切换显示功能【附源码下载】

    这篇文章主要介绍了微信小程使用swiper组件实现图片轮播切换显示功能,涉及swiper组件相关属性使用技巧,并附带源码供读者下载参考,需要的朋友可以参考下
    2017-12-12

最新评论