オブジェクトのkeyからvalueを取得する例をひとつ書きました
ここではすべての値ではなく
与えられた key から value を取得してみます
すべてのvalueを取得する場合
コード.gs
function get_data() { var keys = "a a b c"; keys = keys.split(" "); var result = []; for (var i = 0; i < keys.length; i++) { var value = data[keys[i]]; result.push(value); } Logger.log(result); } var data = { "a": "えー", "b": "びー", "c": "しー" } |
意訳この機能がやること dataオブジェクトから取得したい値のキーをkeysに入れて それを半角スペースで区切って 結果を入れる入れ物を用意して keysの数だけ以下を繰り返す dataオブジェクトからひとつずつ値を取得して resultに追加する resultをログに出す dataオブジェクトを作る data["a"] なら えー を返す data["b"] なら びー を返す data["c"] なら しー を返す |
補足
keyとvalueを抽象的に書くと
dataオブジェクトはこうなっていて
var data {
"key1": "value1",
"key2": "value2",
"key3": "value3"
}
get_data()の中で
data["key1"]と書いてvalue1を取得しています
コード.gsの中で使っているkeyとvalueはこうなっていて
var data {
"a": "えー",
"b": "びー",
"c": "しー"
}
data["a"]で "えー" を
data["b"]で "びー" を
data["c"]で "しー" を
それぞれ取得できるので
for文のここで取得してresultに追加して
var value = data[keys[i]];
result.push(value);
最終的に全部入ったresultをログに出しています
Logger.log(result);