--- title: Reflect.ownKeys() slug: Web/JavaScript/Reference/Global_Objects/Reflect/ownKeys tags: - ECMAScript 2015 - JavaScript - Méthode - Reference - Reflect translation_of: Web/JavaScript/Reference/Global_Objects/Reflect/ownKeys original_slug: Web/JavaScript/Reference/Objets_globaux/Reflect/ownKeys ---
{{JSRef}}
La méthode statique Reflect.ownKeys() renvoie un tableau qui contient les clés des propriétés propres (non héritées) de l'objet cible.
Le code source de cet exemple interactif est disponible dans un dépôt GitHub. Si vous souhaitez contribuez à ces exemples, n'hésitez pas à cloner https://github.com/mdn/interactive-examples et à envoyer une pull request !
Reflect.ownKeys(cible)
cibleUn objet {{jsxref("Array")}} qui contient les clés des propriétés propres de cible.
Une erreur {{jsxref("TypeError")}} si cible n'est pas un {{jsxref("Object")}}.
La méthode Reflect.ownKeys renvoie un tableau dont les éléments sont les clés des propriétés propres de l'objet cible. Sa valeur de retour est équivalente à {{jsxref("Object.getOwnPropertyNames", "Object.getOwnPropertyNames(target)", "", 1)}}.concat({{jsxref("Object.getOwnPropertySymbols", "Object.getOwnPropertySymbols(target)", "", 1)}}).
Reflect.ownKeys({z: 3, y: 2, x: 1}); // [ "z", "y", "x" ]
Reflect.ownKeys([]); // ["length"]
var sym = Symbol.for("comète");
var sym2 = Symbol.for("météore");
var obj = {[sym]: 0, "str1": 0, "773": 0, "0": 0,
[sym2]: 0, "-1": 0, "8": 0, "seconde str": 0};
Reflect.ownKeys(obj);
// [ "0", "8", "773", "str1", "-1", "seconde str", Symbol(comète), Symbol(météore) ]
// Indices dans l'ordre numérique
// Chaînes de caractères dans l'ordre d'insertion
// Symboles dans l'ordre d'insertion
| Spécification | État | Commentaires |
|---|---|---|
| {{SpecName('ES2015', '#sec-reflect.ownkeys', 'Reflect.ownKeys')}} | {{Spec2('ES2015')}} | Définition initiale. |
| {{SpecName('ESDraft', '#sec-reflect.ownkeys', 'Reflect.ownKeys')}} | {{Spec2('ESDraft')}} |
{{Compat("javascript.builtins.Reflect.ownKeys")}}