From 4e16a320e50c5a1de3e0b4a558ca883b1f9ee250 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Peter=20Holl=C3=B3?= Date: Sat, 30 Dec 2017 15:46:01 +0100 Subject: [PATCH] Create size.md --- snippets/size.md | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 snippets/size.md diff --git a/snippets/size.md b/snippets/size.md new file mode 100644 index 000000000..42b3cfd9d --- /dev/null +++ b/snippets/size.md @@ -0,0 +1,15 @@ +### size + +Get size of arrays, objects or strings. + +Get type of value – array, object and string. Use `length` property for arrays. Return `length` or `size` value if available or number of object keys. Split strings into array of characters with `split('')` and return its length. + +```js +const size = value => Array.isArray(value) ? value.length : value && typeof value === 'object' ? value.size || value.length || Object.keys(value).length : typeof value === 'string' ? value.split('').length : 0; +``` + +```js +size([ 1, 2, 3, 4, 5 ]); // 5 +size('size'); // 4 +size({ one: 1, two: 2, three: 3 }); // 3 +```