私はJavaScriptマップを使用してキーと値を保存しています。後で、指定されたキーがマップに存在するかどうかを確認しますが、正しい結果が得られることもありますが、そうでない場合もあります。私はconsole.log(mapname)
を使って地図を印刷しようとしましたが、すべてのキーを表示しますが、特定のキーが存在するかどうかを確認しようとすると、間違った答えが出ることがあります。可能問題になることが何javascriptマップ/オブジェクトで異常な動作が発生する
// following code is called n times in loop with different/same vales of x
myMap : new Object();
var key = x ; // populated dynamically actually
myMap[key] = "dummyval";
if(myIdMap[document.getElementById("abc").value.trim()] != null)
alert('present');
else
alert('not present');
:
は、次のコードを使用していますか?英数字/整数値をキーとして使用できますか?
は、私たちはあなたのコンテキストを見ることができますこれを使っていますか? 'myMap'はどこに定義されていますか(オブジェクトリテラルのように見えます)? 'x'はどのように作成されましたか(それはグローバルなのでしょうか、何とか引数として渡されますか?また、同じ値が 'x'として渡されることもあると言っていますが、' x'の古い値に関連付けられた結果の値は、あなたがそれを行うときに破壊されます。しかし、実際にはより詳細な情報を使用することができます。このような問題を診断するのは難しいです。 – Reid
このコードにはいくつかの構文/参照エラーがあります。使用している実際のコードを投稿できますか? – Stephen