update snippets 62-78

This commit is contained in:
Stefan Feješ
2017-12-25 14:23:06 +01:00
committed by Agamemnon Zorbas
parent 32fa5a9773
commit d0a8c3b238
16 changed files with 81 additions and 36 deletions

View File

@ -9,5 +9,8 @@ const JSONToDate = arr => {
const dt = new Date(parseInt(arr.toString().substr(6))); const dt = new Date(parseInt(arr.toString().substr(6)));
return `${dt.getDate()}/${dt.getMonth() + 1}/${dt.getFullYear()}`; return `${dt.getDate()}/${dt.getMonth() + 1}/${dt.getFullYear()}`;
}; };
// JSONToDate(/Date(1489525200000)/) -> "14/3/2017" ```
```js
JSONToDate(/Date(1489525200000)/) -> "14/3/2017"
``` ```

View File

@ -1,17 +1,20 @@
### inRange ### inRange
Checks if the given number falls within the given range. Checks if the given number falls within the given range.
Use arithmetic comparison to check if the given number is in the specified range. Use arithmetic comparison to check if the given number is in the specified range.
If the second parameter, `end`, is not specified, the range is considered to be from `0` to `start`. If the second parameter, `end`, is not specified, the range is considered to be from `0` to `start`.
```js ```js
const inRange = (n, start, end = null) => { const inRange = (n, start, end=null) => {
if (end && start > end) end = [start, start = end][0]; if(end && start > end) end = [start, start=end][0];
return (end == null) ? (n >= 0 && n < start) : (n >= start && n < end); return (end == null) ? (n>=0 && n<start) : (n>=start && n<end);
}; }
// inRange(3, 2, 5) -> true ```
// inRange(3, 4) -> true
// inRange(2, 3, 5) -> false ```js
// inrange(3, 2) -> false inRange(3, 2, 5) // true
inRange(3, 4) // true
inRange(2, 3, 5) // false
inrange(3, 2) // false
``` ```

View File

@ -9,5 +9,5 @@ const initialize2DArray = (w, h, val = null) => Array(h).fill().map(() => Array(
``` ```
```js ```js
initializeArrayWithRange(2, 2, 0) -> [[0,0], [0,0]] initialize2DArray(2, 2, 0) -> [[0,0], [0,0]]
``` ```

View File

@ -8,6 +8,9 @@ You can omit `start` to use a default value of `0`.
```js ```js
const initializeArrayWithRange = (end, start = 0) => const initializeArrayWithRange = (end, start = 0) =>
Array.from({ length: (end + 1) - start }).map((v, i) => i + start); 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]
```js
initializeArrayWithRange(5) -> [0,1,2,3,4,5]
initializeArrayWithRange(7, 3) -> [3,4,5,6,7]
``` ```

View File

@ -7,5 +7,8 @@ You can omit `value` to use a default value of `0`.
```js ```js
const initializeArrayWithValues = (n, value = 0) => Array(n).fill(value); const initializeArrayWithValues = (n, value = 0) => Array(n).fill(value);
// initializeArrayWithValues(5, 2) -> [2,2,2,2,2] ```
```js
initializeArrayWithValues(5, 2) -> [2,2,2,2,2]
``` ```

View File

@ -6,5 +6,8 @@ Create a `Set` from `b`, then use `Array.filter()` on `a` to only keep values co
```js ```js
const intersection = (a, b) => { const s = new Set(b); return a.filter(x => s.has(x)); }; const intersection = (a, b) => { const s = new Set(b); return a.filter(x => s.has(x)); };
// intersection([1,2,3], [4,3,2]) -> [2,3] ```
```js
intersection([1,2,3], [4,3,2]) -> [2,3]
``` ```

View File

@ -6,8 +6,11 @@ Convert the given number into an array of digits. Use `Math.pow()` to get the ap
```js ```js
const isArmstrongNumber = digits => const isArmstrongNumber = digits =>
(arr => arr.reduce((a, d) => a + Math.pow(parseInt(d), arr.length), 0) == digits)((digits + '').split('')); ( arr => arr.reduce( ( a, d ) => a + Math.pow( parseInt( d ), arr.length ), 0 ) == digits ? true : false )( ( digits+'' ).split( '' ) );
// isArmstrongNumber(1634) -> true ```
// isArmstrongNumber(371) -> true
// isArmstrongNumber(56) -> false ```js
isArmstrongNumber(1634) // true
isArmstrongNumber(371) // true
isArmstrongNumber(56) // false
``` ```

View File

@ -6,6 +6,9 @@ Use `Array.isArray()` to check if a value is classified as an array.
```js ```js
const isArray = val => !!val && Array.isArray(val); const isArray = val => !!val && Array.isArray(val);
// isArray(null) -> false ```
// isArray([1]) -> true
```js
isArray(null) -> false
isArray([1]) -> true
``` ```

View File

@ -6,6 +6,9 @@ Use `typeof` to check if a value is classified as a boolean primitive.
```js ```js
const isBoolean = val => typeof val === 'boolean'; const isBoolean = val => typeof val === 'boolean';
// isBoolean(null) -> false ```
// isBoolean(false) -> true
```js
isBoolean(null) -> false
isBoolean(false) -> true
``` ```

View File

@ -6,5 +6,8 @@ Use the modulo operator (`%`) to check if the remainder is equal to `0`.
```js ```js
const isDivisible = (dividend, divisor) => dividend % divisor === 0; const isDivisible = (dividend, divisor) => dividend % divisor === 0;
// isDivisible(6,3) -> true ```
```js
isDivisible(6,3) -> true
``` ```

View File

@ -7,5 +7,8 @@ Returns `true` if the number is even, `false` if the number is odd.
```js ```js
const isEven = num => num % 2 === 0; const isEven = num => num % 2 === 0;
// isEven(3) -> false ```
```js
isEven(3) -> false
``` ```

View File

@ -6,6 +6,9 @@ Use `typeof` to check if a value is classified as a function primitive.
```js ```js
const isFunction = val => val && typeof val === 'function'; const isFunction = val => val && typeof val === 'function';
// isFunction('x') -> false ```
// isFunction(x => x) -> true
```js
isFunction('x') -> false
isFunction(x => x) -> true
``` ```

View File

@ -6,6 +6,9 @@ Use `typeof` to check if a value is classified as a number primitive.
```js ```js
const isNumber = val => typeof val === 'number'; const isNumber = val => typeof val === 'number';
// isNumber('1') -> false
// isNumber(1) -> true
``` ```
```js
isNumber('1') -> false
isNumber(1) -> true
```

View File

@ -2,7 +2,7 @@
Checks if the provided integer is a prime number. Checks if the provided integer is a prime number.
Check numbers from `2` to the square root of the given number. Check numbers from `2` to the square root of the given number.
Return `false` if any of them divides the given number, else return `true`, unless the number is less than `2`. Return `false` if any of them divides the given number, else return `true`, unless the number is less than `2`.
```js ```js
@ -11,6 +11,9 @@ const isPrime = num => {
for (var i = 2; i * i <= boundary; i++) if (num % i == 0) return false; for (var i = 2; i * i <= boundary; i++) if (num % i == 0) return false;
return num >= 2; return num >= 2;
}; };
// isPrime(11) -> true ```
// isPrime(12) -> false
```js
isPrime(11) -> true
isPrime(12) -> false
``` ```

View File

@ -6,6 +6,9 @@ Use `typeof` to check if a value is classified as a string primitive.
```js ```js
const isString = val => typeof val === 'string'; const isString = val => typeof val === 'string';
// isString(10) -> false ```
// isString('10') -> true
```js
isString(10) -> false
isString('10') -> true
``` ```

View File

@ -6,6 +6,9 @@ Use `typeof` to check if a value is classified as a symbol primitive.
```js ```js
const isSymbol = val => typeof val === 'symbol'; const isSymbol = val => typeof val === 'symbol';
// isSymbol('x') -> false ```
// isSymbol(Symbol('x')) -> true
```js
isSymbol('x') -> false
isSymbol(Symbol('x')) -> true
``` ```