JavaScript 1.7 / destructuring assignment

<script type="text/javascript; version=1.7">
	function Multiply4(a, b) {
		return [a[0]*b[0], a[1]*b[1], a[2]*b[2], a[3]*b[3]];
	}
	var [x,y,z,w] = Multiply4([1,2,3,4], [5,6,7,8]);
	document.write("(",x,",",y,",",z,",",w,")");
</script>

 Luaの多重代入や任意個数の戻り値は便利な言語仕様ですが、似たようなことがJavaScriptでもできるようになるんですね。上記では初歩的なことしかしていませんが、他にもいくつかの用法があるようです。