首页 > 语言 > JavaScript > 正文

Javascript实现的Map集合工具类完整实例

2024-05-06 16:24:07
字体:
来源:转载
供稿:网友

这篇文章主要介绍了Javascript实现的Map集合工具类,以完整实例形式分析了javascript实现map集合的构造、查找、删除、判断等相关技巧,需要的朋友可以参考下

本文实例讲述了Javascript实现的Map集合工具类。分享给大家供大家参考。具体如下:

 

 
  1. var Map = function(){ 
  2. // 构造entry实体 
  3. var Entry = function(key, value){ 
  4. this.key = key; 
  5. this.value = value; 
  6. this.entries = new Array(); 
  7. // 构造put方法在数组中放入一个Entry 
  8. this.put = function(key, value){ 
  9. // 数组中已存在就不放入 
  10. for (var i = 0; i < this.size(); i++) { 
  11. if (this.entries[i].key === key) { 
  12. return false
  13. this.entries.push(new Entry(key, value)); 
  14. }; 
  15. // 模拟get方法 
  16. this.get = function(key){ 
  17. for (var i = 0; i < this.size(); i++) { 
  18. if (this.entries[i].key === key) { 
  19. return this.entries[i].value; 
  20. return null
  21. }; 
  22. // 查找下标值 
  23. this.indexOf = function(key){ 
  24. var index = -1; 
  25. for (var i = 0; i < this.size(); i++) { 
  26. if (this.entries[i].key === key) { 
  27. index = i; 
  28. break
  29. return index; 
  30. // 删除一个元素 
  31. this.remove = function(key){ 
  32. var index = this.indexOf(key); 
  33. if (index != -1) { 
  34. this.entries.splice(index, 1); 
  35. // 取得map长度 
  36. this.size = function(){ 
  37. return this.entries.length; 
  38. }; 
  39. // 重新设置键值对 
  40. this.setValue = function(key, value){ 
  41. var index = this.indexOf(key); 
  42. if (index != -1) { 
  43. this.entries[i].value = value; 
  44. }; 
  45. }; 
  46. // 是否为空map 
  47. this.isEmpty = function(){ 
  48. return this.size() <= 0; 
  49. }; 
  50. //清空map ; 
  51. this.clear = function(){ 
  52. this.entries = []; 
  53. }; 
  54. // 得到entry实体 
  55. this.getEntry = function(index){ 
  56. if (index >= 0 && index < this.size()) { 
  57. return this.entries[index]; 
  58. return null
  59. this.toString = function(){ 
  60. var str = "["
  61. for (var i = 0; i < this.size(); i++) { 
  62. str += this.getEntry(i).key + "=" + this.getEntry(i).value + ","
  63. // 去除最后一个"," 
  64. str = str.substring(0, str.length - 1); 
  65. str += "]"
  66. return str; 
  67. }; 

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

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

图片精选