Jemand hat mich kürzlich gefragt, ob JavaScript-Objekteigenschaften notwendigerweise ungeordnet und unvorhersehbar sind?
Entwickler mit früher Erfahrung mit JavaScript antworten möglicherweise, dass Object.keys() oder for...in eine unvorhersehbare Reihenfolge von Objekteigenschaften zurückgibt. Aber ist das immer noch so?
Wie Sie vielleicht erwarten, gibt es jetzt Regeln, die befolgt werden müssen.
Ab ECMAScript 2020 folgen Object.keys, for...in, Object.getOwnPropertyNames und Reflect.ownKeys alle derselben Spezifikationsreihenfolge. Sie sind:
Ein Array-Index ist ein Eigenschaftsschlüssel mit String-Wert, der ein kanonischer numerischer String ist. Und ein kanonischer numerischer String ist eine String-Darstellung einer Zahl, die von ToString erzeugt würde, oder der Zeichenfolge „-0“. So ist beispielsweise „012“ keine kanonische numerische Zeichenfolge, „12“ hingegen schon.
2. Andere eigene String-Eigenschaften, in aufsteigender chronologischer Reihenfolge der Eigenschaftserstellung
3. Eigene Symboleigenschaften, in aufsteigender chronologischer Reihenfolge der Eigenschaftserstellung
Abschluss
Wenn Sie dies hilfreich fanden, denken Sie bitte darüber nach, meinen Newsletter zu abonnieren für weitere nützliche Artikel und Tools zur Webentwicklung. Danke fürs Lesen!
Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.
Copyright© 2022 湘ICP备2022001581号-3