このようなオブジェクトを
var obj = [
{"en": "Aries", "ja": "おひつじ座"},
{"en": "Taurus", "ja": "おうし座"},
{"en": "Gemini", "ja": "ふたご座"},
{"en": "Cancer", "ja": "かに座"},
{"en": "Leo", "ja": "しし座"},
{"en": "Virgo", "ja": "おとめ座"},
{"en": "Libra", "ja": "てんびん座"},
{"en": "Scorpius", "ja": "さそり座"},
{"en": "Sagittarius", "ja": "いて座"},
{"en": "Capriconus", "ja": "やぎ座"},
{"en": "Aquarius", "ja": "みずがめ座"},
{"en": "Pisces", "ja": "うお座"}
]
このような配列にして返したり
[[Aries, おひつじ座], [Taurus, おうし座], [Gemini, ふたご座], [Cancer, かに座], [Leo, しし座], [Virgo, おとめ座], [Libra, てんびん座], [Scorpius, さそり座], [Sagittarius, いて座], [Capriconus, やぎ座], [Aquarius, みずがめ座], [Pisces, うお座]]
このように改行を入れて返したり
Aries,おひつじ座
Taurus,おうし座
Gemini,ふたご座
Cancer,かに座
Leo,しし座
Virgo,おとめ座
Libra,てんびん座
Scorpius,さそり座
Sagittarius,いて座
Capriconus,やぎ座
Aquarius,みずがめ座
Pisces,うお座
したくて書いたコードです
コード.gs
var obj = [
{"en": "Aries", "ja": "おひつじ座"},
{"en": "Taurus", "ja": "おうし座"},
{"en": "Gemini", "ja": "ふたご座"},
{"en": "Cancer", "ja": "かに座"},
{"en": "Leo", "ja": "しし座"},
{"en": "Virgo", "ja": "おとめ座"},
{"en": "Libra", "ja": "てんびん座"},
{"en": "Scorpius", "ja": "さそり座"},
{"en": "Sagittarius", "ja": "いて座"},
{"en": "Capriconus", "ja": "やぎ座"},
{"en": "Aquarius", "ja": "みずがめ座"},
{"en": "Pisces", "ja": "うお座"}
]
function make_arrays(){
var keys = Object.keys(obj[0]);
var arrays = [];
for(var i = 0; i < obj.length; i++){
var array = [];
for(var j = 0; j < keys.length; j++){
var key = keys[j];
array.push(obj[i][key]);
}
arrays.push(array);
}
Logger.log(arrays);
var rows = make_rows(arrays);
Logger.log(rows);
}
function make_rows(arrays){
var rows = "";
for(var i = 0; i < arrays.length; i++){
rows += arrays[i] + "\n";
}
return rows;
}
|
意訳JSONを用意する この機能がやること objのkeysを取得して(例の場合はenとjaがkey) 結果を入れる配列を用意して objの数だけ以下を繰り返す array配列を用意して keysの数だけ以下を繰り返す(例の場合はenとjaなのでkeysの数は2) keyにkeysの値を1つずつ入れて array配列に追加する arrays配列にarrayを追加する arraysをログに出す arraysをmake_rowsに渡して 結果をログに出す この機能がやること rowsという入れ物を用意して arraysの数だけ繰り返す rowsにarraysの値をひとつずつ改行を付けて足して rowsを返す |
実行結果
