Google Apps Script:
連想配列の使用
方法:
Google Apps Scriptで連想配列(オブジェクト)を作成および操作するには、中カッコ {}
を使用してキーバリューペアを定義します。キーは一意の識別子であり、値は文字列や数値から、より複雑なオブジェクトや関数まで何でもかまいません。基本的な例を以下に示します:
function createAssociativeArray() {
var user = {
name: "John Doe",
age: 30,
email: "[email protected]"
};
// 値へのアクセス
Logger.log(user.name); // 出力: John Doe
Logger.log(user["email"]); // 出力: [email protected]
// 新しいキーバリューペアの追加
user.title = "Software Developer";
user["country"] = "USA";
Logger.log(user.title); // 出力: Software Developer
// キーバリューペアの反復処理
for (var key in user) {
Logger.log(key + ': ' + user[key]);
}
}
反復部分のサンプル出力は次のようになるかもしれません:
name: John Doe
age: 30
email: [email protected]
title: Software Developer
country: USA
プロパティへのアクセスや設定にドット表記やブラケット表記の両方を使用できることに注目してください。ブラケット表記は、特にキーが動的に決定されたものや識別子で許可されていない文字を含む場合に便利です。
深掘り
オブジェクトの形式での連想配列は、JavaScriptのプロトタイプベースの継承メカニズムを反映しており、JavaScriptおよび拡張としてのGoogle Apps Scriptの基石となっています。従来の連想配列や辞書(例えばPythonのdict)を持つ言語とは異なり、Google Apps Scriptのオブジェクトは、JavaScriptの動的な性質から得られる柔軟で強力な手段でデータを構造化することを可能にします。
ただし、ECMAScript 2015の仕様がMap
およびSet
オブジェクトを導入し、挿入順の維持や大規模なデータセットに対するパフォーマンスの向上など、オブジェクトに比べて一部の利点を持つより直接的な連想コレクションの取り扱いを提供したことは重要です。Google Apps Scriptもこれらをサポートしていますが、オブジェクトを使用するか、新しいMap
/Set
構造を使用するかの選択は、特定のニーズとパフォーマンスの考慮事項に依存します。ほとんどの連想配列のタスクには、従来のオブジェクトベースの実装が親しみやすく多用途なアプローチを提供しますが、スクリプトの複雑さが増すにつれて、新しい代替手段を検討することが望ましいです。