このようなオブジェクトの中から、Libra, Scorpiusを見つけて
var obj = {
'Aries':'Aries',
'Taurus': 'おうし座',
'Gemini': 'ふたご座',
'Cancer': 'かに座',
'Leo': 'しし座',
'Virgo': 'おとめ座',
'Libra': 'てんびん座',
'Scorpius': 'さそり座',
'Sagittarius': 'いて座',
'Capriconus': 'やぎ座',
'Aquarius': 'みずがめ座',
'Pisces': 'うお座'
}
このように新しいオブジェクトを作りたい
var obj2 = {
Libra=てんびん座,
Scorpius=さそり座
}
コード.gs
function returnObj() { var obj = { 'Aries':'Aries', 'Taurus': 'おうし座', 'Gemini': 'ふたご座', 'Cancer': 'かに座', 'Leo': 'しし座', 'Virgo': 'おとめ座', 'Libra': 'てんびん座', 'Scorpius': 'さそり座', 'Sagittarius': 'いて座', 'Capriconus': 'やぎ座', 'Aquarius': 'みずがめ座', 'Pisces': 'うお座' } return obj; } function test1() { var obj = returnObj(); var key = "Scorpius"; var value = obj[key]; Logger.log(value); } function test2() { var obj = returnObj(); var key = "Scorpius"; var value = obj[key]; var obj2 = {}; obj2[key] = value Logger.log([value, obj2]); } function createObj() { var obj = returnObj(); var keys = ["Scorpius", "Libra"]; var obj2 = {}; for(var i = 0; i < keys.length; i++) { var value = obj[keys[i]]; obj2[keys[i]] = value } Logger.log(obj2); } |
意訳この機能がやること オブジェクトを作って key: valueのセットを作って 返す この機能がやること objにreturnObj()の戻り値を入れて 探すkeyを決めて objからvalueを取得して ログに出す この機能がやること objにreturnObj()の戻り値を入れて 探すkeyを決めて objからvalueを取得して 新しいオブジェクトobj2を作って obj2 = { key: value } を作って valueとともにログに出す この機能がやること objにreturnObj()の戻り値を入れて 探すkeyを複数決めて 新しいオブジェクトobj2を作って keysの要素の数だけ繰り返す keyをひとつずつ取り出してそのvalueを取得して obj2 = { key: value } を作って obj2を返す |
実行結果
createObj()を実行するとこのようなログが出ます
(test1とtest2はcreateObjを導くために試した足跡)
関連記事
参考
オブジェクトの利用
https://developer.mozilla.org/ja/docs/Web/JavaScript/Guide/Working_with_Objects