麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 語言 > JavaScript > 正文

JavaScript中實現map功能代碼分享

2024-05-06 16:22:09
字體:
來源:轉載
供稿:網友

這篇文章主要介紹了JavaScript中實現map功能代碼分享,本文直接給出實現代碼,給出一個MAP類,類中包含大多數的常用方法,還可以自己擴展,需要的朋友可以參考下

 

 
  1. /* 
  2. * MAP對象,實現MAP功能 
  3. * 
  4. * 接口: 
  5. * size() 獲取MAP元素個數 
  6. * isEmpty() 判斷MAP是否為空 
  7. * clear() 刪除MAP所有元素 
  8. * put(key, value) 向MAP中增加元素(key, value) 
  9. * remove(key) 刪除指定KEY的元素,成功返回True,失敗返回False 
  10. * get(key) 獲取指定KEY的元素值VALUE,失敗返回NULL 
  11. * element(index) 獲取指定索引的元素(使用element.key,element.value獲取KEY和VALUE),失敗返回NULL 
  12. * containsKey(key) 判斷MAP中是否含有指定KEY的元素 
  13. * containsValue(value) 判斷MAP中是否含有指定VALUE的元素 
  14. * values() 獲取MAP中所有VALUE的數組(ARRAY) 
  15. * keys() 獲取MAP中所有KEY的數組(ARRAY) 
  16. * 
  17. * 例子: 
  18. * var map = new Map(); 
  19. * 
  20. * map.put("key", "value"); 
  21. * var val = map.get("key") 
  22. * …… 
  23. * 
  24. */ 
  25. function Map() { 
  26. this.elements = new Array(); 
  27.  
  28. //獲取MAP元素個數 
  29. this.size = function() { 
  30. return this.elements.length; 
  31.  
  32. //判斷MAP是否為空 
  33. this.isEmpty = function() { 
  34. return(this.elements.length < 1); 
  35.  
  36. //刪除MAP所有元素 
  37. this.clear = function() { 
  38. this.elements = new Array(); 
  39.  
  40. //向MAP中增加元素(key, value) 
  41. this.put = function(_key, _value) { 
  42. this.elements.push( { 
  43. key : _key, 
  44. value : _value 
  45. }); 
  46.  
  47. //刪除指定KEY的元素,成功返回True,失敗返回False 
  48. this.remove = function(_key) { 
  49. var bln = false
  50. try
  51. for(i = 0; i < this.elements.length; i++) { 
  52. if(this.elements[i].key == _key) { 
  53. this.elements.splice(i, 1); 
  54. return true
  55. catch(e) { 
  56. bln = false
  57. return bln; 
  58.  
  59. //獲取指定KEY的元素值VALUE,失敗返回NULL 
  60. this.get = function(_key) { 
  61. try
  62. for(i = 0; i < this.elements.length; i++) { 
  63. if(this.elements[i].key == _key) { 
  64. return this.elements[i].value; 
  65. catch(e) { 
  66. return null
  67.  
  68. //獲取指定索引的元素(使用element.key,element.value獲取KEY和VALUE),失敗返回NULL 
  69. this.element = function(_index) { 
  70. if(_index < 0 || _index >= this.elements.length) { 
  71. return null
  72. return this.elements[_index]; 
  73.  
  74. //判斷MAP中是否含有指定KEY的元素 
  75. this.containsKey = function(_key) { 
  76. varbln = false
  77. try
  78. for(i = 0; i < this.elements.length; i++) { 
  79. if(this.elements[i].key == _key) { 
  80. bln = true
  81. catch(e) { 
  82. bln = false
  83. return bln; 
  84.  
  85. //判斷MAP中是否含有指定VALUE的元素 
  86. this.containsValue = function(_value) { 
  87. var bln = false
  88. try
  89. for(i = 0; i < this.elements.length; i++) { 
  90. if(this.elements[i].value == _value) { 
  91. bln = true
  92. catch(e) { 
  93. bln = false
  94. return bln; 
  95.  
  96. //獲取MAP中所有VALUE的數組(ARRAY) 
  97. this.values = function() { 
  98. var arr = new Array(); 
  99. for(i = 0; i < this.elements.length; i++) { 
  100. arr.push(this.elements[i].value); 
  101. return arr; 
  102.  
  103. //獲取MAP中所有KEY的數組(ARRAY) 
  104. this.keys = function() { 
  105. var arr = new Array(); 
  106. for(i = 0; i < this.elements.length; i++) { 
  107. arr.push(this.elements[i].key); 
  108. return arr; 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 国产午夜精品一区二区三区四区 | 毛片免费看的 | 怦然心动50免费完整版 | 国产精品亚洲欧美一级在线 | 91精品国产92久久久久 | 欧美激情性色生活片在线观看 | 国产精品999在线观看 | 激情亚洲网 | 国产在线观看91一区二区三区 | 日本娇小videos高潮 | chinesexxxx刘婷hd 国产资源视频在线观看 | 国产午夜精品一区二区三区四区 | 日韩精品中文字幕在线播放 | 91九色国产视频 | 特级毛片免费视频 | www日韩大片 | 中国fx性欧美xxxx | 黄在线免费 | 国产精品一区二区三区在线看 | 亚洲午夜久久久精品一区二区三区 | 成人午夜久久 | 99亚洲伊人久久精品影院红桃 | 精品国产一区二区三区天美传媒 | 国产不卡av在线 | 操碰网| 欧美日韩大片在线观看 | 精品一区二区三区不卡 | 日日草夜夜草 | 久久久免费观看完整版 | 免费一级毛片观看 | 91一区二区在线观看 | 草草视频免费 | 成人性视频免费网站下载软件 | 国产精品99久久免费观看 | 亚洲视频网 | 免费视频a| 逼片| 欧美自拍三区 | 日韩做爰视频免费 | 亚洲免费毛片基地 | 综合网日日天干夜夜久久 |