Splicing and Objects don't mix

While trying to pass objects back and forth between two arrays, I discovered a problem (after a long time of debugging). Here’s the simplified code with the last line being the problem

var one_arr:Array = [];
var two_arr:Array = [];
var temp_obj = {
 test: 'value'
};
one_arr.push(temp_obj);
trace(one_arr[0]);//outputs ' [object Object] '
trace(one_arr[0].test);// outputs ' value '
two_arr.push(one_arr.splice(0,1) );
trace(two_arr[0]);//outputs ' [object Object] '
trace(two_arr[0].test);//outputs ' undefined ' ////Would like it to trace ' value ' though

Why do the contents of the object get dropped ?
How can I work around this ?
Thanks in advance