そのため、キーが id (int) で値が文字列であるオブジェクトがある場合がありました。しかし、ほとんどの場合、文字列に基づいて ID を検索していることに気付きました。そのため、これを逆にして、文字列をキーにし、値を ID にすることにしました。そうすれば、各項目を調べて値を比較する代わりに、var id = storage[text];
. 以下は、私たちが行ったことの例です。
古い実装の例を次に示します。
var storage = {
0 : null,
1 : "Hello",
2 : "world!",
3 : "How are you?"
}
新しい実装の例を次に示します。
var storage = {
"null" : 0,
"Hello" : 1,
"world!" : 2,
"How are you?" : 3
}
文字列がキーであり、同じ文字列に対して同じ ID を取得しても問題ないことを理解しています。しかし、文字列がかなり巨大になる可能性があるため (わずかな可能性ですが、おそらく文字列あたり最大 1KB)、JS または Android Webview がオブジェクト キーに設定する長さ制限はありますか?
また、この実装には欠点がありますか? これまでのところ問題に気づいていませんが、あなたにはわかりません。