Heim  >  Artikel  >  Web-Frontend  >  Der Unterschied zwischen gewöhnlichen Javascript-Funktionen und Konstruktoren (ausführliche Erklärung kombiniert mit Code)

Der Unterschied zwischen gewöhnlichen Javascript-Funktionen und Konstruktoren (ausführliche Erklärung kombiniert mit Code)

亚连
亚连Original
2018-05-19 14:22:512387Durchsuche

In diesem Artikel werden hauptsächlich relevante Informationen zum Unterschied zwischen gewöhnlichen Funktionen und Konstruktoren in Javascript vorgestellt. Freunde, die sie benötigen, können sich auf

Der Unterschied zwischen gewöhnlichen Funktionen und Konstruktoren

Was die Benennungsregeln angeht, schreiben Konstruktoren im Allgemeinen den ersten Buchstaben groß, und gewöhnliche Funktionen folgen der Benennungsmethode in Kamel-Fall.

Wenn die Funktion aufgerufen wird:

function fn() { }

Konstruktor : 1. new fn( ) 2. Im Konstruktor wird ein neues Objekt erstellt, also eine Instanz von f
3. Dies innerhalb der Funktion zeigt auf die neu erstellte Instanz von f
4. Der Standardrückgabewert ist f Beispiel

Gewöhnliche Funktion : 1. fn( ) 2. Innerhalb der aufrufenden Funktion wird kein neues Objekt erstellt
3. Dies innerhalb der Funktion zeigt auf das Objekt von die aufrufende Funktion (Wenn es keinen Objektaufruf gibt, ist der Standardwert Fenster)
            4. Der Rückgabewert wird durch die Rückgabeanweisung bestimmt

Der Rückgabewert des Konstruktors:

Dort ist ein Standardrückgabewert, das neu erstellte Objekt (Beispiel); Wenn der Rückgabewert manuell hinzugefügt wird (Rückgabeanweisung):


1. Der Rückgabewert ist ein grundlegender Datentyp --> Der tatsächliche Rückgabewert ist immer noch das neu erstellte Objekt (Instanz)

      2. Der Rückgabewert ist ein komplexer Datentyp (Objekt) -->Der tatsächliche Rückgabewert ist dieses Objekt


Sehen Sie sich ein allgemeines Interview an Frage

<script>
  function foo() {
    var f2 = new foo2();
    console.log(f2);  //{a: 3}
    console.log(this); //window
    return true;
  }
  function foo2() {
    console.log(this); //foo2类型的对象 不是foo2函数
//    this.age = 30;
    return {a: 3};
  }
  var f1 = foo();
  console.log(f1); // true
</script>

Das Obige habe ich für Sie zusammengestellt. Ich hoffe, es wird in Zukunft für alle hilfreich sein.

Verwandte Artikel:

Knoten

js+Express-Implementierung von Datei-Upload-Falldetails

JS generiert Zeitliste und Ausgabe

webpack.config.

jsParameter-Anwendungsfall

Das obige ist der detaillierte Inhalt vonDer Unterschied zwischen gewöhnlichen Javascript-Funktionen und Konstruktoren (ausführliche Erklärung kombiniert mit Code). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn