2016-10-25 9 views
0

Ich fand die folgende Art und Weise Prototyp Methoden in Javascript zu nennen:JavaScript-Funktion aufrufen Methoden

this.abc(x,y,z).cnt; 

Was diese Aussage Aufruf werden, die Argumente und was werden die Rückgabewerte sein. Ich habe diese Art der Verwendung in meiner Anwendung gesehen, an der ich gerade arbeite.

Antwort

2

this.abc(x,y,z).cnt bedeutet

  • .abc Verfahren des aktuellen Objekts (oder was immer this ist zu definieren)
  • .abc nimmt x, y, z und gibt ein Objekt
  • Das zurückgegebene Objekt hat eine Eigenschaft namens cnt
  • this.abc(x,y,z).cnt grundsätzlich ge ts den Wert dieser Eigenschaft

Wenn Sie mit Sprachen wie Python vertraut sind, ist es gleichbedeutend mit

self.abc(x, y, z)["cnt"] 
+0

ya gut danke. Da ich dieses Muster nicht verwendet habe, war ich verwirrt, ob es eine Arg-Manipulation geben wird, während ich Werte an die Prototyp-Methode übergebe –

0

Das this Call-Methode abc mit dem Parameter x,y,z und dann cnt Eigenschaft nehmen.

Schauen Sie sich dieses Beispiel an und konzentrieren Sie sich auf die Variable Daten in abc Methode.

// init a class 
function Obj(){} 

// add method abc 
Obj.prototype.abc = function(x, y, z) { 
    var cnt = x + y + z; 
    var data = {cnt: cnt}; 

    // return object with cnt property 
    return data; 
} 

const obj = new Obj(); 
const x = 1, y = 2, z = 3; 

// cnt = 6 
var cnt = obj.abc(x,y,z).cnt; 

// equal with this 
var data = obj.abc(x, y, z); 
console.log(data.cnt) 
Verwandte Themen