javascript中類比實現java語言中的map

來源:互聯網
上載者:User

標籤:set   his   語言   js對象   map容器   bsp   var   har   count   

//javascript中類比實現java語言中的map

實現代碼:

<!DOCTYPE html>

<html lang="en">

<head>

         <meta charset="UTF-8">

         <script type="text/javascript">

                   //private

                   var obj={};//空的對象容器,用於承裝索引值對

                   function Map()

                   {

                            //put方法

                            this.put=function(key,value)

                            {

                                     obj[key]=value;//把索引值對綁定到js對象上

                            }

                            //使用者用去map容器的個數

                            this.size=function()

                            {

                                     //定義一個變數用於記錄個數

                                     var count=0;

                                     for(var attr in obj)

                                     {

                                               count++;

                                     }

                                     return count;

                            }

                            //根據key得到value值

                            this.get=function(key)

                            {

                                     /**

                                     因為在js中如果變數為0,在判斷的條件中表示為false(類型自動轉換)

                                     */

                                     if(obj[key]||obj[key]===0||obj[key]===false)

                                     {

                                               return obj[key];

                                     }

                                     else

                                     {

                                               return null;

                                     }

                            }

                            //根據key刪除

                            this.remove=function(key)

                            {

                                     if(obj[key]||obj[key]===0||obj[key]===false)

                                     {

                                               delete obj[key];

                                     }

                            }

                            //遍曆map中的元素

                            this.eachMap=function(fun)

                            {

                                     for(var attr in obj)

                                     {

                                               fun(attr,obj[attr]);

                                     }

                            }

                   }

                   //類比java中的map

                   var m=new Map();

                   m.put("1",‘徐守威‘);

                   m.put("2",25);

                   m.put("3",true);

                   m.put("4",new Date());

                   //console.log(m.size());

                   //console.log(m.get("1"));

                   //m.remove("1");

                   //console.log(m.get("1"));

                   m.eachMap(function(key,value){

                            console.log(key+" : "+value)

                   });

         </script>

</head>

<body>

        

</body>

</html>

javascript中類比實現java語言中的map

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.