Java scriptオブジェクト向けプログラミングについて

2682 ワード

オブジェクト向けプログラミングは一種の考え方である.たとえばC言語はプロセス向けであり,アップグレード版のc#はオブジェクト向け言語といえる.オブジェクトに面していない前に、符号化中に冗長コードがたくさんあります.コンパイルが必要な部分が複雑であれば、この過程でエラーの確率が大幅に向上します.オブジェクト向けにプログラミングすると、プログラムのメンテナンスが容易になり、コードの多重性が高くなります.共通性のあるデータ、関数を一緒に処理することは、問題の簡単化に有利である.
オブジェクト向けプログラミングには、抽象、パッケージング、継承、マルチステートの4つの特徴があります.抽象は核心的な問題をつかみ、他の関係のないところを無視することである.継承は、クラスを結合する階層モデルであり、クラスの再利用を許可し、奨励します.多重継承と多態の特徴を持つ.パッケージもその明らかな特徴であり、オブジェクトとクラス概念の主な特性である.文と関数をカプセル化し,内部の具体的な実装を考慮せず,機能の使用のみを考慮する.JSで最も特徴的な表現は,異なる役割ドメインの変数を多重化することである.多態は実はやった内容を誰と分けるのか.jsは動的言語なので、多態性自体があります.
この考え方はプログラミングだけでなく、日常生活にも応用できる.「万物すべての対象」とはそうである.
Java Scriptは、すべてのものがほとんどオブジェクトであるため、オブジェクト向けの言語と言える.しかし、クラスがないため、厳密な意味でのオブジェクト向け言語ではありません.しかし、変数や方法のコンテナや役割を演じるなど、コンストラクタがクラスでできることがあります.彼はクラスベースの継承はありませんが、プロトタイプベースの継承があります.2つのオブジェクトシステムを構築する方法は、継承と集約によって行われます.その独特性から,プロトタイプベースのオブジェクト向け言語といえる.
Java Scriptのオブジェクトには、メソッドとプロパティが含まれます.
まず,属性はプロセスプログラミング向けに変数である.var name = 'Zhang';
var email = '[email protected]';
var sex = 'male';

オブジェクト向けにプログラミングする場合は、変数を属性に変換します.var person = {
name : 'Zhang',
email : '[email protected]',
sex : 'male'
}

これにより、人間というオブジェクトの様々な属性を得る必要がある場合、次のようにすることができます.person.name;
person.email;
person.sex;

メソッドは関数です. <br> function aaa() // : <br> { <br> alert('abc'); <br> } <br> var arr=[1,2,3,4]; <br> arr.aaa=function () // : <br> { <br> alert('abc'); <br> }; <br> aaa(); <br> arr.aaa(); <br>
newキーワード作成オブジェクト
キーワードnewの後には、コンストラクション関数(constructor)と呼ばれる関数呼び出しが続き、javascript言語のコアの元のタイプには、組み込まれたコンストラクション関数が含まれています.var obj = new Object();// , {}
var arr = new Array();// , []

工場モード
Java Scriptではクラスを作成できないため、開発者は、特定のインタフェースでオブジェクトを作成する詳細をカプセル化する関数を発明しました.
“ var Person= (function(){ var Person= function(name,sex,age){ this.name= name; this.sex= sex; this.age= age; };
  return function(name,sex,age){
        return new Car(name,sex,age);
    }
})();

var Benz = new Car(“Zhang”,male,10); var Audi = new Car(“Li”,female,5); “
に質問
new関数の重複定義がなくnewを加える
こっそり二つのことをした.
あなたのために空白のオブジェクトを作成して、あなたのためにこのオブジェクトに戻りました.
プロトタイプ——prototype
プロトタイプはclassで、彼が影響できる要素を修正します.既存のオブジェクトに独自のプロパティとメソッドを加えることができます.既存のオブジェクトへの影響を変更できます.
“ var arr1=new Array(12,55,34,78,676); var arr2=new Array(12,33, 1);
Array.prototype.sum=function ()//class //arr1.sum=function()/行間スタイル{var result=0;
for(var i=0;i