DDR爱好者之家 Design By 杰米

本文实例讲述了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>

运行结果:

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

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

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

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

DDR爱好者之家 Design By 杰米
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
DDR爱好者之家 Design By 杰米