Array.prototype.sliceの用途

これ使えば、argumentsとかの擬似配列と呼ばれるものを本物の配列に変換
できるらしい。 どういう仕組みになってるのかは知らんけど。。

var func = function(){
	var args = Array.prototype.slice.call(arguments);
	var data = ["hoge3","hoge4"];
	
	return args.concat(data);
}

console.log("result : ",func("hoge1", "hoge2"));


知ってる方がいらっしゃいましたらアドバイスをお願いします。^^;