Heim  >  Artikel  >  Backend-Entwicklung  >  Analyse des Kommaoperators in js

Analyse des Kommaoperators in js

不言
不言Original
2018-07-14 10:40:501435Durchsuche

Dieser Artikel stellt hauptsächlich die Analyse des Komma-Operators in js vor. Er hat einen gewissen Referenzwert. Jetzt können Freunde in Not darauf zurückgreifen.

Übersicht: Der Kommaoperator wertet jeden seiner Operanden aus (von links nach rechts) und gibt den Wert des letzten Operanden zurück. Der Kommaoperator kann verwendet werden, wenn Sie mehrere Ausdrücke einschließen möchten, obwohl ein Ausdruck erwartet wird. Dieser Operator wird am häufigsten verwendet, wenn mehrere Parameter in einer for-Schleife bereitgestellt werden. Beachten Sie, dass das Komma in der var-Anweisung kein Kommaoperator ist, da es in einem Ausdruck nicht vorhanden ist.

Fall:

function testFunc () {
  var a = 0;
  return (a += 1, a); // 等价于return ++x;
}

console.log((1, 2)); // console 2
console.log((a = b = 3, c = 4)); // console 4

Die Verwendung des Kommaoperators

Sehen wir uns zunächst einen Fall an:

var obj = {
    myFunc: function () {
        console.log(this === window);
        console.log(this === obj);
    }
}
obj.myFunc();   // false  true
(0,obj.myFunc)(); // true

Das Ausgabeergebnis ist falsch-wahr.

In der Funktion foo zeigt dies auf a, da foo eine Methode von a ist. Daher ist es verständlich, dass this===window false zurückgibt.

Beim Aufruf von (0,obj.myFunc)() wertet der Ausdruck (0,a.foo) jeden seiner Operanden aus (von links nach rechts) und gibt den Wert des letzten Operanden zurück. Mit anderen Worten, (0, a.foo) ist gleich:

function(){
console.log(this === window);//且这个函数不再附加到任何东西,它this是全局对象window,所以输出的是true。

Das Obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, dass er für das Lernen aller hilfreich ist zur chinesischen PHP-Website!

Verwandte Empfehlungen:

So verwenden Sie natives JS zur Implementierung von AjaxjQuery-Selektoranalyse von Engine Sizzle

Das obige ist der detaillierte Inhalt vonAnalyse des Kommaoperators in js. 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
Vorheriger Artikel:Sortiercode für PDO-StrukturNächster Artikel:Sortiercode für PDO-Struktur