Google Apps Script:
Usando arrays associativos
Como fazer:
No Google Apps Script, você cria e manipula arrays associativos (objetos) usando chaves {}
, definindo pares chave-valor dentro delas. As chaves são identificadores únicos, e os valores podem ser qualquer coisa, desde strings e números até objetos mais complexos ou funções. Aqui está um exemplo básico:
function createAssociativeArray() {
var user = {
name: "John Doe",
age: 30,
email: "[email protected]"
};
// Acessando valores
Logger.log(user.name); // Saída: John Doe
Logger.log(user["email"]); // Saída: [email protected]
// Adicionando novos pares de chave-valor
user.title = "Desenvolvedor de Software";
user["country"] = "EUA";
Logger.log(user.title); // Saída: Desenvolvedor de Software
// Iterando sobre pares de chave-valor
for (var key in user) {
Logger.log(key + ': ' + user[key]);
}
}
A saída da amostra para a parte da iteração pode parecer assim:
name: John Doe
age: 30
email: [email protected]
title: Desenvolvedor de Software
country: EUA
Observe como você pode usar tanto a notação por ponto quanto a notação por colchetes para acessar e definir propriedades. A notação por colchetes é particularmente útil ao trabalhar com chaves que são determinadas dinamicamente ou incluem caracteres não permitidos em identificadores.
Aprofundando
Arrays associativos na forma de objetos têm sido um pilar do JavaScript, e por extensão do Google Apps Script, refletindo seu mecanismo de herança baseado em protótipos. Ao contrário de linguagens com arrays associativos tradicionais ou dicionários (por exemplo, o dict do Python), os objetos do Google Apps Script oferecem um meio flexível e poderoso de estruturar dados, beneficiando-se da natureza dinâmica do JavaScript.
É importante notar, no entanto, que a especificação do ECMAScript 2015 introduziu objetos Map
e Set
, oferecendo um manuseio de coleções associativas mais direto com certos benefícios sobre objetos, como a manutenção da ordem de inserção e melhor desempenho para grandes conjuntos de dados. Embora o Google Apps Script também suporte esses, a escolha entre usar objetos ou as estruturas Map
/Set
mais novas depende de necessidades específicas e considerações de desempenho. Para a maioria das tarefas de array associativo, as implementações baseadas em objetos tradicionais fornecem uma abordagem familiar e versátil, mas é aconselhável examinar alternativas mais recentes à medida que a complexidade do seu script aumenta.