function func1() {
 return { 'year': 2016, 'month': 10 };
}
こういう関数を使って値を取り出す場合には、一旦objと言う変数に入れて、

var obj = func1();
var year = obj['year'];
var month = obj['month'];

とするのが普通だと思うのですが、もしobjを使わずに

var year = func1()['year'];
var month = func1()['month'];

とするとfunc1()が二回実行されて無駄ですよね?
質問は、一時変数objを使わずに、かつfunc1()も一回だけ実行して
値をyearとmonthに取り出す方法はありますか?
目的は、単なる興味です。