diff options
author | Sam Potts <sam@potts.es> | 2018-06-13 00:02:55 +1000 |
---|---|---|
committer | Sam Potts <sam@potts.es> | 2018-06-13 00:02:55 +1000 |
commit | 392dfd024c505f5ae1bbb2f0d3e0793c251a1f35 (patch) | |
tree | aedb56d3945eaa10bf74e61902e16c08fd24914a /src/js/utils/arrays.js | |
parent | 840e31a693462e7ed9f7644a13a0187d9e9d93a9 (diff) | |
download | plyr-392dfd024c505f5ae1bbb2f0d3e0793c251a1f35.tar.lz plyr-392dfd024c505f5ae1bbb2f0d3e0793c251a1f35.tar.xz plyr-392dfd024c505f5ae1bbb2f0d3e0793c251a1f35.zip |
Utils broken down into seperate files and exports
Diffstat (limited to 'src/js/utils/arrays.js')
-rw-r--r-- | src/js/utils/arrays.js | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/src/js/utils/arrays.js b/src/js/utils/arrays.js new file mode 100644 index 00000000..69ef242c --- /dev/null +++ b/src/js/utils/arrays.js @@ -0,0 +1,23 @@ +// ========================================================================== +// Array utils +// ========================================================================== + +import is from './is'; + +// Remove duplicates in an array +export function dedupe(array) { + if (!is.array(array)) { + return array; + } + + return array.filter((item, index) => array.indexOf(item) === index); +} + +// Get the closest value in an array +export function closest(array, value) { + if (!is.array(array) || !array.length) { + return null; + } + + return array.reduce((prev, curr) => (Math.abs(curr - value) < Math.abs(prev - value) ? curr : prev)); +} |