zoukankan      html  css  js  c++  java
  • js封装Hashmap

    function HashMap()
    {
        // members
        this.keyArray = new Array(); // Keys
        this.valArray = new Array(); // Values
           
        // methods
        this.put = put;
        this.get = get;
        this.size = size; 
        this.clear = clear;
        this.keySet = keySet;
        this.valSet = valSet;
        this.showMe = showMe;   // returns a string with all keys and values in map.
        this.findIt = findIt;
        this.remove = remove;
    }

    function put( key, val )
    {
        var elementIndex = this.findIt( key );
       
        if( elementIndex == (-1) )
        {
            this.keyArray.push( key );
            this.valArray.push( val );
        }
        else
        {
            this.valArray[ elementIndex ] = val;
        }
    }

    function get( key )
    {
        var result = null;
        var elementIndex = this.findIt( key );

        if( elementIndex != (-1) )
        {  
            result = this.valArray[ elementIndex ];
        } 
       
        return result;
    }

    function remove( key )
    {
        var result = null;
        var elementIndex = this.findIt( key );

        if( elementIndex != (-1) )
        {
            this.keyArray = this.keyArray.removeAt(elementIndex);
            this.valArray = this.valArray.removeAt(elementIndex);
        } 
       
        return ;
    }

    function size()
    {
        return (this.keyArray.length); 
    }

    function clear()
    {
        for( var i = 0; i < this.keyArray.length; i++ )
        {
            this.keyArray.pop(); this.valArray.pop();  
        }
    }

    function keySet()
    {
        return (this.keyArray);
    }

    function valSet()
    {
        return (this.valArray);  
    }

    function showMe()
    {
        var result = "";
       
        for( var i = 0; i < this.keyArray.length; i++ )
        {
            result += "Key: " + this.keyArray[ i ] + "\tValues: " + this.valArray[ i ] + "\n";
        }
        return result;
    }

    function findIt( key )
    {
        var result = (-1);

        for( var i = 0; i < this.keyArray.length; i++ )
        {
            if( this.keyArray[ i ] == key )
            {
                result = i;
                break;
            }
        }
        return result;
    }

    function removeAt( index )
    {
      var part1 = this.slice( 0, index);
      var part2 = this.slice( index+1 );

      return( part1.concat( part2 ) );
    }
    Array.prototype.removeAt = removeAt;

  • 相关阅读:
    java内部类
    navicat使用教程-PJ
    提交代码时的注意事项
    多线程技术
    Apache POI使用详解
    网站链接收藏夹
    MySQL优化
    Oracle创建用户、角色、授权、建表
    oracle 安装提示未找到文件安装
    Json对象与Json字符串的转化、JSON字符串与Java对象的转换
  • 原文地址:https://www.cnblogs.com/afarmer/p/2426071.html
Copyright © 2011-2022 走看看