Artigo original publicado em: http://www.birchlee.com/post/2011/10/19/27.aspx
O JavaScript frequentemente encontra alguns pares de valores-chave, que foram implementados anteriormente usando arrays bidimensionais. Hoje, simplesmente simulamos a classe de ajuda Dictionary.
Princípio: Crie um objeto contendo dois arrays, um array de chave e um array de valor, e chame o método do objeto Javascript Array.
Endereço de referência W3C: http://www.w3school.com.cn/js/jsref_obj_array.asp
O método BuildDictionary() é usado para criar um objeto Dicionário contendo dois arrays
O método AddItem chama o método push do objeto Array do JavaScript para anexar chaves e valores ao array correspondente.
O método UpdateItem é usado para alterar o valor correspondente
O método DeleteItem chama o método Splice do objeto Array do JavaScript para excluir elementos. O primeiro parâmetro é o índice do elemento a ser excluído e o primeiro parâmetro representa o número a ser excluído.
GetKeyStr é usado para obter a string após concatenar o array Keys
GetValueStr é usado para obter a string após concatenar o array Values.
Contém cinco métodos no total:
/*Criar dicionário*/
função BuildDictionary() {
dic = novo Objeto();
dic.Keys = new Array(); //matriz de chaves
dic.Values = new Array(); //matriz de valores
retornar dic;
}
/*Adiciona chave, valor*/
function AddItem(chave, valor, dic) {
var keyCount = dic.Keys.length;
if (keyCount > 0) {
var sinalizador = verdadeiro;
for (var i = 0; i < keyCount; i++) {
if (dic.Keys[i] == chave) {
bandeira = falso;
break; //Se existir, não adicione
}
}
se (sinalizador) {
dic.Keys.push(chave)
dic.Valores.push(valor);
}
}
outro {
dic.Keys.push(chave)
dic.Valores.push(valor);
}
retornar dic;
}
/*Alterar chave, valor*/
function UpdateItem(chave, valor, dic) {
var keyCount = dic.Keys.length;
if (keyCount > 0) {
var sinalizador = -1;
for (var i = 0; i < keyCount; i++) {
if (dic.Keys[i] == chave) {
bandeira = eu;
break; //Encontre o índice correspondente
}
}
if (sinalizador > -1) {
dic.Keys[flag] = chave;
dic.Values[flag] = valor;
}
retornar dic;
}
outro {
retornar dic;
}
}
/*Remover valor da chave*/
function DeleteItem(chave, dic) {
var keyCount = dic.Keys.length;
if (keyCount > 0) {
var sinalizador = -1;
for (var i = 0; i < keyCount; i++) {
if (dic.Keys[i] == chave) {
bandeira = eu;
break; //Encontre o índice correspondente
}
}
if (sinalizador > -1) {
dic.Keys.splice(flag,1);
dic.Values.splice(flag, 1);
}
retornar dic;
}
outro {
retornar dic;
}
}
/*Obtém a string da chave e concatena-a com símbolos*/
função GetKeyStr(separador,dic)
{
var keyCount=dic.Keys.length;
if(keyCount>0)
{
retornar dic.Keys.join(separador);
}
outro
{
retornar '';
}
}
/*Obtém a string Value e concatena-a com símbolos*/
função GetValueStr(separador,dic)
{
var keyCount=dic.Keys.length;
if(keyCount>0)
{
retornar dic.Values.join(separador);
}
outro
{
retornar '';
}
}
Uso: Crie uma variável global e opere essa variável global para usá-la.
Aqui está um bom começo