プロトタイプ集

何かと便利なprototype関数集。プログラミングの過程で新しいものを作ったら逐次追加していく。

Array

push

2006/06/11

配列変数.push( 追加データ )

配列の要素を末尾に追加する。IE5.0では未実装のため追加しておくことを推奨。

Array.prototype.push = function( data )
{
        var plus = this.length;
        return this[plus] = data;
}

pop

2006/06/11

return : 配列変数.pop()

配列の末尾の要素を取り出す。IE5.0では未実装のため追加しておくことを推奨。

Array.prototype.pop = function()
{
        var last = this.length-1;
        return this[last];
}

pointDel

2006/06/11

return : 配列変数.pointDel(削除する要素番号)

指定された番号の要素を削除した配列を返す。

Array.prototype.pointDel = function( point )
{
        var first = this.slice(0,point);
        var last = this.slice(point+1,this.length);
        return first.concat(last);
}

insert

2009/12/22

return : 配列変数.insert(挿入する後ろの配列番号,データ)

指定された番号の要素の前に新たに要素を挿入する。

Array.prototype.insert = function( point,data )
{
        var first = this.slice(0,point);
        first.push(data);
        var last = this.slice(point,this.length);
        return first.concat(last);
}

Copy (1次配列用)

2006/06/11

return : 配列変数.Copy()

1次配列の要素を独立してコピーする。単に代入するだけでは要素一つ一つは違う変数でも連動してしまうが、このCopy関数でコピーすると2つの変数の配列は全くの別物になる。

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

Copy (多次配列用)

2006/06/11

return : 配列変数.Copy()

1次配列用と要領は同じだが、配列内に違う種類のオブジェクトを持っているとエラーを起こす。データベースなどに使う、要素全てが単純変数から成る配列での使用に限られる。

もし全オブジェクトをコピーしたいなら、この関数は各オブジェクトのprototypeのCopy()を参照するように作られているため、全てのオブジェクトのCopy関数を作ればよい。

Array.prototype.Copy = function()
{
        var new_array = new Array( this.length );
        for( var i=0 ; i<this.length ; i++ )
        {
                if( typeof this[i] == "object" )var now = this[i].Copy();
                else var now = this[i];
                new_array[i] = now;
                
        }
        return new_array;
}

ページ情報

作成日時
2006/06/11
最終更新日時
2006/12/22
HTML4.01版
index.html
XHTML1.1版
index.xhtml
XML原本
index.xml