In der gestrigen "Autorited JavaScript Guide" -Studie Anmerkungen 10: ECMASScript 5 Enhanced Objektmodell trat ein seltsames Phänomen beim Debuggen eines Code -Stücks auf. Veröffentlichen Sie nun den Quellcode unten:
Die Codekopie lautet wie folgt:
<script type = "text/javaScript">
Funktion person () {}
var per = neue Person;
Object.DefineProperties (per,
{
"Spitzname":
{
Wert: "Tom",
Beschreibbar: wahr
},
"Alter":
{
Wert: 20,
Konfigurierbar: Falsch,
Beschreibbar: Falsch
}
});
var o = Object.getownPropertyDescriptor (per, "Spitzname");
Alert (json.Stringify (o));
</script>
Auslaufergebnisse in Google:
http://img.blog.csdn.net/20140529073008296?watermark/2/text/AHR0CDOVL2JSB2CUY3NKBI5UZXQV DtaxMta0MZG0MW ==/FONT/5A6L5L2T/FONTSIZE/400/FILL/I0JBQKFCMA ==/DISTSOLVE/70/GRAVITITÄT/Mitte
Dieses Ergebnis ist korrekt, aber wenn Sie es an einen anderen Ort ändern, ist das Ergebnis unterschiedlich
Die Codekopie lautet wie folgt:
<script type = "text/javaScript">
Funktion person () {}
var per = neue Person;
Object.DefineProperties (per,
{
"Spitzname":
{
Wert: "Tom",
Beschreibbar: wahr
},
"Alter":
{
Wert: 20,
Konfigurierbar: Falsch,
Beschreibbar: Falsch
}
});
var name = Object.getownPropertyDescriptor (per, "Spitzname");
alert (json.Stringify (name));
</script>
Auslaufergebnisse:
Warum ist das? Ich habe gerade einen einfachen variablen Namen geändert
Das Problem liegt im Namen, aber ich verstehe es nicht. Ich suchte online nach Informationen, hatte aber keine Ergebnisse. Später ging ich zu einem älteren Bruder und stellte das Problem in das Forum: http://bbs.csdn.net/topics/390799744?page=1#post-397474060,
Name ist eine Fenstereigenschaft, mit der der Name des Fensters festgelegt oder zurückgegeben wird, und der Datentyp ist eine Zeichenfolge. Da der erste Satz eine Funktion Person () {} ist, ist er beendet, sodass der folgende Code im globalen Kontext steht, dh denken Sie aufmerksam (JSON.Stringify (Name)); Ist der obige VAR -Name Ausgabe, aber tatsächlich kann es Fenster sein. NAME Ausgabe. Für die Ausgabe [Objektobjekt] ist dieser Typ der Typ des Namens des Namens.