argumentsをArrayに変換する

id:amachangさんのエントリに
argumentsをArrayに変換する3つの方法が載っていたので
僕も一つ見つけてみました。

function test(){

    var args = [].slice.apply(arguments);

}

とりあえず僕の環境がMac OSXなのでIEでは未確認ですが
firefoxsafarioperaで動く事を確認しました。
明日出社したらIEで試してみます。


document.getElemets〜の戻り値にも適用できるんじゃないかと思い、

    var elements = [].slice.apply(document.getElementsByTagName('*'));

とやってみたのですが、firefoxOperaではOKでsafariではelementsが空っぽになってしまいました。


alert(!!elements.concat)  //trueと表示


となったので、Arrayのオブジェクトになってるようなのですが。
むしろこちらの変換方法を知りたくなりました。きっと便利だと思う。