Skip to content

Object property count

Easily retrieve the length of an object’s keys, own property names, and own property symbols.

Type TC39 CoreJS Babel Civet JS+
Polyfill Stage 1 View via Custom
Baseline logo Baseline
Chrome logo Edge logo
Firefox logo Zen logo
Safari logo
Node logo
Bun logo
Deno logo
Cloudflare Workers logo

Returns the number of an object’s enumerable own string-keyed properties. Equivalent to Object.keys(object).length.

Object.keysLength({ a: 1, b: 2, c: 3 }); // → 3
Object.keysLength({}); // → 0

Object.getOwnPropertyNamesLength(object: object): number

Section titled “Object.getOwnPropertyNamesLength(object: object): number”
Baseline logo Baseline
Chrome logo Edge logo
Firefox logo Zen logo
Safari logo
Node logo
Bun logo
Deno logo
Cloudflare Workers logo

Returns the number of an object’s own string-keyed properties, including non-enumerable ones. Equivalent to Object.getOwnPropertyNames(object).length.

const obj = Object.defineProperty({}, 'hidden', { value: 1, enumerable: false });
Object.keysLength(obj); // → 0 (non-enumerable excluded)
Object.getOwnPropertyNamesLength(obj); // → 1 (non-enumerable included)

Object.getOwnPropertySymbolsLength(object: object): number

Section titled “Object.getOwnPropertySymbolsLength(object: object): number”
Baseline logo Baseline
Chrome logo Edge logo
Firefox logo Zen logo
Safari logo
Node logo
Bun logo
Deno logo
Cloudflare Workers logo

Returns the number of an object’s own symbol-keyed properties. Equivalent to Object.getOwnPropertySymbols(object).length.

const sym1 = Symbol('a');
const sym2 = Symbol('b');
const obj = { [sym1]: 1, [sym2]: 2, c: 3 };
Object.getOwnPropertySymbolsLength(obj); // → 2 (only symbols counted)
Object.keysLength(obj); // → 1 (only string keys counted)