Travis build: 710 [ci skip]

This commit is contained in:
Travis CI
2017-12-31 12:13:21 +00:00
parent 0ca15e3fe7
commit 1fd8ea262e
4 changed files with 55 additions and 6 deletions

View File

@ -260,6 +260,15 @@
</details>
### _Uncategorized_
<details>
<summary>View contents</summary>
* [`sampleSize`](#samplesize)
</details>
---
## 🔌 Adapter
@ -4361,6 +4370,35 @@ yesNo('Foo', true); // true
<br>[⬆ Back to top](#table-of-contents)
---
## _Uncategorized_
### sampleSize
Gets `n` random elements at unique keys from `array` up to the size of `array`.
Shuffle the array using the [Fisher-Yates algorithm](https://github.com/chalarangelo/30-seconds-of-code#shuffle).
Use `Array.slice()` to get the first `n` elements.
Omit the second argument, `n` to get only one element at random from the array.
```js
const sampleSize = ([...arr], n = 1) => {
let m = arr.length;
while (m) {
const i = Math.floor(Math.random() * m--);
[arr[m], arr[i]] = [arr[i], arr[m]];
}
return arr.slice(0, n);
};
```
```js
sampleSize([1, 2, 3], 2); // [3,1]
sampleSize([1, 2, 3], 4); // [2,3,1]
```
<br>[⬆ back to top](#table-of-contents)
## Collaborators

File diff suppressed because one or more lines are too long

View File

@ -7,17 +7,17 @@ Use `Array.slice()` to get the first `n` elements.
Omit the second argument, `n` to get only one element at random from the array.
```js
const sampleSize = ([...arr],n=1) => {
const sampleSize = ([...arr], n = 1) => {
let m = arr.length;
while (m) {
const i = Math.floor(Math.random() * m--);
[arr[m], arr[i]] = [arr[i], arr[m]];
}
return arr.slice(0,n)
}
return arr.slice(0, n);
};
```
```js
sampleSize([1,2,3],2); // [3,1]
sampleSize([1,2,3],4); // [2,3,1]
sampleSize([1, 2, 3], 2); // [3,1]
sampleSize([1, 2, 3], 4); // [2,3,1]
```

View File

@ -114,6 +114,7 @@ RGBToHex:utility
round:math
runPromisesInSeries:function
sample:array
sampleSize:uncategorized
scrollToTop:browser
sdbm:utility
select:object