コンストラクタ


ブログ一覧にもどる
このキーワードの理解
関数は、オブジェクトの構築に役立ちます
コンストラクタ関数はオブジェクトを作成するための青写真として機能します
どこに属するのかコントロールする
コールを使用して、バインドしてバインドする理由

どのように、我々はJSでオブジェクトをつくりますか?


1 .オブジェクトリテラル
var a ={ name : "バットマン"
しかし、同じ型の複数のオブジェクトを作成するには、オブジェクトリテラルメソッドは非効率ですが、解決策があります.
コンストラクタ
  • 私たちは同様に関数を使用してJS内のオブジェクトを作成することができます.
  • これは、関数を使用してオブジェクトを作成する例です.
  • function Player(name, team) {
    this.name=name
    this.team=team
    }
    var myObj = new Player ( “Cristiano ronaldo” , “Portugal”)
    
    //Above code is similar to this
    
    
    Let myObj = {}
    
    function Player(name, team) {
    myObj.name=name
    myObj.team=team
    
    Return myObj
    }
    
    myObj= Player ( “Cristiano ronaldo” , “Portugal”)
    
    
    //Notice, how ‘this’ is replaced by myObj
    
    
    記憶する
  • ここで、これは我々が作成している新しいオブジェクトを指します.
  • ‘新しい'キーワードポイント'これは我々が作成しているオブジェクトに'
    これはJavaScriptで
  • this 関数の実行方法によって決まります.
  • メソッド(オブジェクト内で関数が書き込まれる)では、これは所有者オブジェクトを参照します.
  • 単独では、これはグローバルなオブジェクトを指します.
  • 関数では、グローバルオブジェクトを参照します.
    今、我々はこの'の基本を見てきたとJSの'新しい'キーワードの重要性.しかし、これは私たちのためにさらに行うことができます.
    ' this 'は所有者オブジェクトといつでも所有しているすべてのプロパティを表します.
    それは所有者のオブジェクトを見つけるのに役立ちます.それは所有者Onejctを変更するのに役立ちます.
    //Constructor function helps you add properties on other objects as well
    //All you have to do is invoke with proper context
    
    
    //lets create a system to give aadhar id to our users
    
    
    
    
    var person1 = {
        name:'jonny kumar'
    }
    var person2={name:'happy singh'}
    
    - how to give person1 and person2 id
    
    - we want something like this
    
    var person1 = {
        name:'jonny kumar',
     createAadharId(){
        this.id= Math.round(Math.random()*100000000000000)
    
    }
    }
    
    //but that will be redudant and expensive.
    
    function createAadharId(){
        person1.id= Math.round(Math.random()*100000000000000)
    
    }
    
    //this is redundant as well
    
    function createAadharId(){
        this.id= Math.round(Math.random()*100000000000000)
    
    }
    //basically we want to invite a constructor function
    
    //call
    
    createAadharId.call(person1)
    
    createAadharId.call(person2)
    
    
    // call allows us to execute a constructor with an object of our choice
    
    コンストラクター関数のオブジェクト呼び出しのいずれかがプロパティを取得します.
    JSでは、呼び出し、適用、バインドメソッドを使用してこの値を変更できます.トップブログの下でチェックアウト
    JSにおける' this 'を理解するリソースhttps://www.w3schools.com/js/js_this.asp
    https://www.programiz.com/javascript/constructor-function
    https://medium.com/@omergoldberg/javascript-call-apply-and-bind-e5c27301f7bb

    Thank you for reading :))

    The Future has not been written. There's no fate but what we make for ourselves


    あなたが私のブログが好きであるならば、あなたは私とつながっていますHashnode Blog