Mae向きなブログ

Mae向きな情報発信を続けていきたいと思います。

Array.prototype.cloneの疑問点

Firebugで探索アルゴリズムを見ていこう」を見ていて疑問に思ったことがあります。

下記のように配列のコピーを行っているのですが…。

//clone:ディープコピー
Array.prototype.clone = function() {
  function f() {}
  f.prototype = Object(this);
  return new f();
}

どういう意味なんでしょう?
最近,JavaScriptも面白いなぁと思っているのですが,なんだか難しい書き方が出てくると理解できないでいます…。
以下のように書いてあると分かりやすいのですが…。

Array.prototype.clone = function() {
    var array = new Array();
    for (var i = 0; i < this.length; i++) {
        array[i] = this[i];
    }
    return array;
}