Movatterモバイル変換


[0]ホーム

URL:


  1. Tecnología web para desarrolladores
  2. JavaScript
  3. Referencia de JavaScript
  4. Objetos globales
  5. Object
  6. Object.keys()

Esta página ha sido traducida del inglés por la comunidad.Aprende más y únete a la comunidad de MDN Web Docs.

View in EnglishAlways switch to English

Object.keys()

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since ⁨julio de 2015⁩.

El método estáticoObject.keys() devuelve un arreglo de propiedades enumerables propias de un objeto dado.

Pruébalo

const object1 = {  a: "somestring",  b: 42,  c: false,};console.log(Object.keys(object1));// Expected output: Array ["a", "b", "c"]

Sintaxis

js
Object.keys(obj)

Parámetros

obj

Un objeto.

Valor devuelto

Un arreglo de strings que representan todas las propiedades del objeto.

Descripción

Object.keys devuelve un arreglo cuyos elementos son cadenas correspondientes a las propiedades enumerables que se encuentran directamente en elobject. Esto es lo mismo que iterar con un buclefor...in, excepto que un buclefor...in también enumera las propiedades en la cadena de prototipo. El orden del arreglo devuelto porObject.keys() es el mismo que proporciona el buclefor...in.

Si necesita los valores de la propiedad, useObject.values() en su lugar. Si necesita ambos las claves de la propiedad como sus valores, useObject.entries() en su lugar

Ejemplos

Usando Object.keys()

js
// Arreglo sencilloconst arr = ["a", "b", "c"];console.log(Object.keys(arr)); // ['0', '1', '2']// Arreglo como objetoconst obj = { 0: "a", 1: "b", 2: "c" };console.log(Object.keys(obj)); // ['0', '1', '2']// arreglo como objeto con nombres ordenados aleatoriamenteconst anObj = { 100: "a", 2: "b", 7: "c" };console.log(Object.keys(anObj)); // ['2', '7', '100']// getFoo es una propiedad no enumerableconst myObj = Object.create(  {},  {    getFoo: {      value() {        return this.foo;      },    },  },);myObj.foo = 1;console.log(Object.keys(myObj)); // ['foo']

Si quierestodas las propiedades, incluso las no enumerables, miraObject.getOwnPropertyNames().

Usando Object.keys() en primitivos

Los argumentos que no son objetos sonobjetos forzados. Únicamente las cadenas pueden tener propiedades enumerables propias, mientras que todas las demás primitivas devuelven un arreglo vacío.

js
// Las cadenas de texto tienen índices como propiedades propias enumerablesconsole.log(Object.keys("foo")); // ['0', '1', '2']// Otros primitivos no tienen propiedas propiasconsole.log(Object.keys(100)); // []

Nota:En ES5, si el argumento paraObject.keys() no es un objeto, causaráTypeError.

Especificaciones

Specification
ECMAScript® 2026 Language Specification
# sec-object.keys

Compatibilidad con navegadores

Véase también

Help improve MDN

Learn how to contribute

This page was last modified on byMDN contributors.


[8]ページ先頭

©2009-2025 Movatter.jp