JavaScript-String als Objekt interpretiert

8

Wahrscheinlich aus produktionstechnischer Sicht irrelevant, aber ich würde gerne wissen, warum sich das so verhält. Das String-Literal wird als Objekt interpretiert.

%Vor%

Ich muss anrufen

%Vor%

innerhalb der Funktion, wenn ich die erwartete Ausgabe möchte. Ich weiß, Zeichenfolgen sind Objekte in Javascript (das ist schön), aber in einer einfachen console.log ('abc') werden sie natürlich als Zeichenfolgen interpretiert. Warum das? Ist das in irgendeiner Weise nützlich? Bitte ignorieren Sie die Tatsache, dass fancyCallback im globalen Gültigkeitsbereich definiert ist!

    
A. Sallai 01.05.2014, 17:19
quelle

1 Antwort

6

Aus MDN-Aufruf () :

  

thisArg

     

Der Wert, der für den Aufruf von fun bereitgestellt wird. Beachten Sie, dass dies   möglicherweise nicht der tatsächliche Wert, der von der Methode gesehen wird: wenn die Methode a ist   Funktion im nicht strikten Modus Code, Null und undefiniert wird ersetzt   mit dem globalen Objekt, und Grundwerte werden eingerahmt .

Primitives [aka numbers / strings] werden in ein Containerobjekt eingefügt, so dass es genau so funktioniert, wie Sie es sehen.

Was es im Grunde macht, ist

%Vor%     
epascarello 01.05.2014, 17:26
quelle

Tags und Links