From bd1d37f528f3d946fe7c0033df2be56f2f4cb16e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Stefan=20Feje=C5=A1?=
Date: Tue, 19 Dec 2017 21:38:05 +0100
Subject: [PATCH] build website and readme.md
---
README.md | 32 +++++++++++++++++++++++++-------
docs/index.html | 19 +++++++++++++++----
2 files changed, 40 insertions(+), 11 deletions(-)
diff --git a/README.md b/README.md
index bce4069d1..d8c665c1a 100644
--- a/README.md
+++ b/README.md
@@ -87,6 +87,7 @@
* [`hammingDistance`](#hammingdistance)
* [`isDivisible`](#isdivisible)
* [`isEven`](#iseven)
+* [`isPrime`](#isprime)
* [`lcm`](#lcm)
* [`median`](#median)
* [`palindrome`](#palindrome)
@@ -407,7 +408,7 @@ Use `Array((end + 1) - start)` to create an array of the desired length, `Array.
You can omit `start` to use a default value of `0`.
```js
-const initializeArrayWithRange = (end, start = 0) =>
+const initializeArrayWithRange = (end, start = 0) =>
Array.from({ length: (end + 1) - start }).map((v, i) => i + start);
// initializeArrayWithRange(5) -> [0,1,2,3,4,5]
// initializeArrayWithRange(7, 3) -> [3,4,5,6,7]
@@ -462,7 +463,7 @@ Maps the values of an array to an object using a function, where the key-value p
Use an anonymous inner function scope to declare an undefined memory space, using closures to store a return value. Use a new `Array` to stor the array with a map of the function over its data set and a comma operator to return a second step, without needing to move from one context to another (due to closures and order of operations).
```js
-const mapObject = (arr, fn) =>
+const mapObject = (arr, fn) =>
(a => (a = [arr, arr.map(fn)], a[0].reduce( (acc,val,ind) => (acc[val] = a[1][ind], acc), {}) )) ( );
/*
const squareIt = arr => mapObject(arr, a => a*a)
@@ -534,14 +535,14 @@ Mutates the original array to filter out the values at the specified indexes.
Use `Array.filter()` and `Array.includes()` to pull out the values that are not needed.
Use `Array.length = 0` to mutate the passed in array by resetting it's length to zero and `Array.push()` to re-populate it with only the pulled values.
-Use `Array.push()` to keep track of pulled values
+Use `Array.push()` to keep track of pulled values
```js
const pullAtIndex = (arr, pullArr) => {
let removed = [];
let pulled = arr.map((v, i) => pullArr.includes(i) ? removed.push(v) : v)
.filter((v, i) => !pullArr.includes(i))
- arr.length = 0;
+ arr.length = 0;
pulled.forEach(v => arr.push(v));
return removed;
}
@@ -561,11 +562,11 @@ Mutates the original array to filter out the values specified. Returns the remov
Use `Array.filter()` and `Array.includes()` to pull out the values that are not needed.
Use `Array.length = 0` to mutate the passed in array by resetting it's length to zero and `Array.push()` to re-populate it with only the pulled values.
-Use `Array.push()` to keep track of pulled values
+Use `Array.push()` to keep track of pulled values
```js
const pullAtValue = (arr, pullArr) => {
- let removed = [],
+ let removed = [],
pushToRemove = arr.forEach((v, i) => pullArr.includes(v) ? removed.push(v) : v),
mutateTo = arr.filter((v, i) => !pullArr.includes(v));
arr.length = 0;
@@ -1216,6 +1217,23 @@ const isEven = num => num % 2 === 0;
[⬆ back to top](#table-of-contents)
+### isPrime
+
+Checks if the provided intiger is primer number.
+
+Returns `false` if the provided number has positive divisors other than 1 and itself or if the number itself is less than 2.
+
+```js
+const isPrime = num =>
+ for (var i = 2; i < num; i++) if (num % i == 0) return false;
+ return num >= 2;
+// isPrime(11) -> true
+// isPrime(12) -> false
+// isPrime(1) -> false
+```
+
+[⬆ back to top](#table-of-contents)
+
### lcm
Returns the least common multiple of two numbers.
@@ -1509,7 +1527,7 @@ a === b -> false
Checks if the predicate (second argument) is truthy on all elements of a collection (first argument).
Use `Array.every()` to check if each passed object has the specified property and if it returns a truthy value.
-
+
```js
truthCheckCollection = (collection, pre) => (collection.every(obj => obj[pre]));
// truthCheckCollection([{"user": "Tinky-Winky", "sex": "male"}, {"user": "Dipsy", "sex": "male"}], "sex") -> true
diff --git a/docs/index.html b/docs/index.html
index 38b5a08ac..b89e58491 100644
--- a/docs/index.html
+++ b/docs/index.html
@@ -112,6 +112,7 @@
hammingDistance
isDivisible
isEven
+isPrime
lcm
median
palindrome
@@ -301,7 +302,7 @@ Use Array.reduce() to create an object, where the keys are produced
Initializes an array containing the numbers in the specified range where start and end are inclusive.
Use Array((end + 1) - start) to create an array of the desired length, Array.map() to fill with the desired values in a range.
You can omit start to use a default value of 0.
-const initializeArrayWithRange = (end, start = 0) =>
+const initializeArrayWithRange = (end, start = 0) =>
Array.from({ length: (end + 1) - start }).map((v, i) => i + start);
// initializeArrayWithRange(5) -> [0,1,2,3,4,5]
// initializeArrayWithRange(7, 3) -> [3,4,5,6,7]
@@ -328,7 +329,7 @@ You can omit value to use a default value of 0.
mapObject
Maps the values of an array to an object using a function, where the key-value pairs consist of the original value as the key and the mapped value.
Use an anonymous inner function scope to declare an undefined memory space, using closures to store a return value. Use a new Array to stor the array with a map of the function over its data set and a comma operator to return a second step, without needing to move from one context to another (due to closures and order of operations).
-
const mapObject = (arr, fn) =>
+const mapObject = (arr, fn) =>
(a => (a = [arr, arr.map(fn)], a[0].reduce( (acc,val,ind) => (acc[val] = a[1][ind], acc), {}) )) ( );
/*
const squareIt = arr => mapObject(arr, a => a*a)
@@ -378,7 +379,7 @@ Use Array.push() to keep track of pulled values
let removed = [];
let pulled = arr.map((v, i) => pullArr.includes(i) ? removed.push(v) : v)
.filter((v, i) => !pullArr.includes(i))
- arr.length = 0;
+ arr.length = 0;
pulled.forEach(v => arr.push(v));
return removed;
}
@@ -395,7 +396,7 @@ Use Array.push() to keep track of pulled values
Use Array.length = 0 to mutate the passed in array by resetting it's length to zero and Array.push() to re-populate it with only the pulled values.
Use Array.push() to keep track of pulled values
const pullAtValue = (arr, pullArr) => {
- let removed = [],
+ let removed = [],
pushToRemove = arr.forEach((v, i) => pullArr.includes(v) ? removed.push(v) : v),
mutateTo = arr.filter((v, i) => !pullArr.includes(v));
arr.length = 0;
@@ -761,6 +762,16 @@ Returns true if the number is even, false if the numbe
const isEven = num => num % 2 === 0;
// isEven(3) -> false
+
isPrime
+
Checks if the provided intiger is primer number.
+
Returns false if the provided number has positive divisors other than 1 and itself or if the number itself is less than 2.
+
const isPrime = num =>
+ for (var i = 2; i < num; i++) if (num % i == 0) return false;
+ return num >= 2;
+// isPrime(11) -> true
+// isPrime(12) -> false
+// isPrime(1) -> false
+
lcm
Returns the least common multiple of two numbers.
Use the greatest common divisor (GCD) formula and Math.abs() to determine the least common multiple.