happy cat image

everdevel

coding

login
お知らせX
  • 現在、コメントだけのお知らせだけ表示します。
  • 表するコメントかログインしてください。

オブジェクト生成

今度はオブジェクトを生成する方法について学習します。

functionを利用しオブジェクトの属性を指定してメソードを作ってその属性をどうやるかを指定し、最後にオブジェクトを生成する順で進めます。

自動車を比喩すれば、

自動車は共通して名前をもち、またエンジンももち、製作者があり、色をもってます。こんなことは属性です。

では自動車のエンジンを掛ける、自動車が動くなどはメソードです。

そしてオブジェクト生成というのは自動車を作ることに該当します。

つまり、属性を指定したらどこの会社か、タイヤは何個か、エンジンは何を使うか、色は何か、何人が乗れるか です。

メソードは走る、止まる、カーブを曲がる です。

オブジェクトを生成することはAUDI R8を造ることに該当します。

では属性を宣言してみます。

属性はfunctionを作って宣言します。

属性宣言

function makeCar(){ //makeCar 属性を定義づける関数の名です。
// 自動車を造るのを例にするのでmakeCarというなを付けました。
//皆様が好きな名でしてもいいです。
//属性はthisを使って宣言します。
//名を属性に造るとしたら
this.name; // こう定義付けます。
//会社も定義づけると
this.company;
//自動車の色を定義づけると
this.color;
//搭乗人員を定義づけると
this.numPeople;
//そしてこんな資料ダチでどうやるかのメソッドに出力します。
this.meth = showCar; // meth という属性の何にshowCarというメソッドのなを指定して宣言します。
}

メソッドを生成してみましょう。
このメソッドの役割は作った自動車がどの会社のか何人が乗れるか色は何かを見せる技能をします。

上の属性宣言ソースを見るとメソッドを呼び出す部分はthis.meth = showCar; ここです。

なのでshowCarというメソッドを作ってみましょう。

メソッドも属性定義のようfunctionを使って定義づけます。

function showCar(){// showCarはメソッドの名
document.write("自動車の名 : "+this.name+"<br />");
document.write("自動車の製造社 : "+this.company+"<br />");
document.write("自動車の搭乗人員: "+this.numPeople+"<br />");
document.write("自動車の色 : "+this.color+"<br />");
}

上のようメソッドを作ってもう自動車を作ってみましょう。この過程はオブジェクト生成といいます。

AUDI社の R8を作ってみましょう。

オブジェクト生成

まず、オブジェクトを生成する変数を宣言してからnewという命令後を使って属性を宣言した関数の名を書きます。

こうなります。

r8 = new makeCar();

そして自動車の名前などをバリューに入れます。 this.name = "r8" こんなふう。。

したのようです。

r8 = new makeCar();
r8.name="R8";
r8.company = "AUDI";
r8.color = "white";
r8.numPeople = 2;
r8.meth(); //メソッドの呼び出し

では例でやってみましょう。

<!doctype html>
<html>
<head>
<meta charset="utf-8" />
<title>everdevel JavaScript</title>
<script>
    function makeCar(){
        this.name;
        this.company;
        this.color;
        this.numPeople;
        this.meth = showCar;
    }

    function showCar(){
        document.write("自動車の名 : "+this.name+"<br />");
        document.write("自動車の製造社 : "+this.company+"<br />");
        document.write("自動車の搭乗人員: "+this.numPeople+"<br />");
        document.write("自動車の色 : "+this.color+"<br />");
    }

    r8 = new makeCar();
    r8.name="R8";
    r8.company = "AUDI";
    r8.color = "white";
    r8.numPeople = 2;
    r8.meth();
</script>
</head>
<body>
</body>
</html>

結果

confirm

r8じゃなく他のオブジェクトを生成するとしたら上のような方法で他のオブジェクトを生成出来ます。

a8 = new makeCar();
a8.name="A8";
a8.company = "AUDI";
a8.color = "Red";
a8.numPeople = 4;
a8.meth();

オブジェクトはこれで終わりです。ありがとうございます。


ご覧くださってありがとうございます。お問い合わせと間違い説明はある場合、下にあるコメントにお願いいたします。


    
    

講義に戻る。

コメント 0個

並べ替え