Files
30-seconds-of-code/snippets/size.md
30secondsofcode f40bb25ad0 Travis build: 1878
2020-04-16 08:54:37 +00:00

803 B

title, tags
title tags
size object,array,string,intermediate

Gets the size of an array, object or string.

Get type of val (array, object or string). Use length property for arrays. Use length or size value if available or number of keys for objects. Use size of a Blob object created from val for strings. Split strings into array of characters with split('') and return its length.


const size = val =>
  Array.isArray(val)
    ? val.length
    : val && typeof val === 'object'
      ? val.size || val.length || Object.keys(val).length
      : typeof val === 'string'
        ? new Blob([val]).size
        : 0;
size([1, 2, 3, 4, 5]); // 5
size('size'); // 4
size({ one: 1, two: 2, three: 3 }); // 3