-2

ハッシュマップを JavaScript のオブジェクトに変換しようとしていますが、キー、つまりオブジェクトのプロパティを渡し、その値を取得したいと考えています。Hashmap mcl = {AB=1,BC=2,DE=3} .今、値ABを送信すると出力が得られますが、BCまたはDEを渡すとそうではありません。誰でもそれについて提案できますか?

function getCount(key)
        {

            var map='<%=mcl%>';

            var nmap=new Object();
            var z=map.substr(1, map.length-2);

            var y=z.split(',');
            for(var i=0;i<y.length;i++)
            {
                var k=y[i];
                var m=k.split("=");
                nmap[m[0]]=m[1];
            }
            alert(nmap[key])
        }
4

2 に答える 2

1

例では;区切り文字 ( {AB=1;BC=2;DE=3}) を使用していますが、コードでは,( z.split(',')) を使用しています。

于 2012-11-29T07:18:00.963 に答える
1

コンマで分割しています,が、例はセミコロンで区切られています;

への変更:

var y=z.split(';');

編集: データにカンマがあり、カンマで分割する場合、コードは問題ありません。実際に関数を呼び出すのを忘れていませんか? 呼び出さないと実行されません。

getCount('AB');

jsFiddle デモ

于 2012-11-29T07:18:22.917 に答える