From 57ea45c10e5563355e389fa19b62ef7e08422a52 Mon Sep 17 00:00:00 2001 From: Rohit Tanwar <31792358+kriadmin@users.noreply.github.com> Date: Wed, 3 Jan 2018 16:47:19 +0530 Subject: [PATCH 1/3] Create pluralize.md --- snippets/pluralize.md | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 snippets/pluralize.md diff --git a/snippets/pluralize.md b/snippets/pluralize.md new file mode 100644 index 000000000..396bedc25 --- /dev/null +++ b/snippets/pluralize.md @@ -0,0 +1,10 @@ +# pluralize + +Checks if the provided `num` is + +``` js +const pluralize = (num, item, items) => ( + num > 0 ? throw new Error(`num takes value greater than equal to 1. Value povided was ${num} `) + num === 1 ? item : items +) +``` From b05c12eadedd24977759096c456d38e159a36644 Mon Sep 17 00:00:00 2001 From: Rohit Tanwar <31792358+kriadmin@users.noreply.github.com> Date: Wed, 3 Jan 2018 16:51:56 +0530 Subject: [PATCH 2/3] Update pluralize.,md --- snippets/pluralize.md | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/snippets/pluralize.md b/snippets/pluralize.md index 396bedc25..50a544e95 100644 --- a/snippets/pluralize.md +++ b/snippets/pluralize.md @@ -1,10 +1,17 @@ # pluralize -Checks if the provided `num` is +Checks if the provided `num` is equal to `1`. If yes return ``` js -const pluralize = (num, item, items) => ( - num > 0 ? throw new Error(`num takes value greater than equal to 1. Value povided was ${num} `) - num === 1 ? item : items -) +const pluralize = (num, item, items) => { + if (num <= 0) throw new Error(`num takes value greater than equal to 1. Value povided was ${num} `) + else return num === 1 ? item : items +} +``` + +```js +pluralize(1,'apple','apples'); //'apple' +pluralize(3,'apple','apples'); //'apples' +pluralize(0,'apple','apples'); //Gives error +pluralize(-3,'apple','apples'); //Gives error ``` From 6eb0a3246c1a100ddfbd0298c094317cb80bdb97 Mon Sep 17 00:00:00 2001 From: Angelos Chalaris Date: Wed, 3 Jan 2018 14:28:39 +0200 Subject: [PATCH 3/3] Update pluralize.md --- snippets/pluralize.md | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/snippets/pluralize.md b/snippets/pluralize.md index 50a544e95..0016a8c92 100644 --- a/snippets/pluralize.md +++ b/snippets/pluralize.md @@ -1,17 +1,19 @@ # pluralize -Checks if the provided `num` is equal to `1`. If yes return +If `num` is greater than `1` returns the plural form of the given string, else return the singular form. + +Check if `num` is positive. Throw an appropriate `Error` if not, return the appropriate string otherwise. +Omit the third argument, `items`, to use a default plural form same as `item` suffixed with a single `'s'`. ``` js -const pluralize = (num, item, items) => { - if (num <= 0) throw new Error(`num takes value greater than equal to 1. Value povided was ${num} `) - else return num === 1 ? item : items -} +const pluralize = (num, item, items = item+'s') => + num <= 0 ? (() => {throw new Error(`'num' should be >= 1. Value povided was ${num}.`)})() : num === 1 ? item : items; ``` ```js -pluralize(1,'apple','apples'); //'apple' -pluralize(3,'apple','apples'); //'apples' -pluralize(0,'apple','apples'); //Gives error -pluralize(-3,'apple','apples'); //Gives error +pluralize(1,'apple','apples'); // 'apple' +pluralize(3,'apple','apples'); // 'apples' +pluralize(2,'apple'); // 'apples' +pluralize(0,'apple','apples'); // Gives error +pluralize(-3,'apple','apples'); // Gives error ```