Travis build: 872 [cron]
This commit is contained in:
File diff suppressed because one or more lines are too long
4128
coverage/lcov.info
4128
coverage/lcov.info
File diff suppressed because it is too large
Load Diff
64
dist/_30s.es5.js
vendored
64
dist/_30s.es5.js
vendored
@ -754,6 +754,9 @@
|
||||
return acc.concat(i > 1 ? acc[i - 1] + acc[i - 2] : i);
|
||||
}, []);
|
||||
};
|
||||
var filterFalsy = function filterFalsy(arr) {
|
||||
return arr.filter(Boolean);
|
||||
};
|
||||
var filterNonUnique = function filterNonUnique(arr) {
|
||||
return arr.filter(function (i) {
|
||||
return arr.indexOf(i) === arr.lastIndexOf(i);
|
||||
@ -1427,6 +1430,17 @@
|
||||
}, {});
|
||||
}, {});
|
||||
};
|
||||
var midpoint = function midpoint(_ref13, _ref14) {
|
||||
var _ref15 = _slicedToArray(_ref13, 2),
|
||||
x1 = _ref15[0],
|
||||
y1 = _ref15[1];
|
||||
|
||||
var _ref16 = _slicedToArray(_ref14, 2),
|
||||
x2 = _ref16[0],
|
||||
y2 = _ref16[1];
|
||||
|
||||
return [(x1 + x2) / 2, (y1 + y2) / 2];
|
||||
};
|
||||
var minBy = function minBy(arr, fn) {
|
||||
return Math.min.apply(Math, _toConsumableArray(arr.map(typeof fn === 'function' ? fn : function (val) {
|
||||
return val[fn];
|
||||
@ -1497,10 +1511,10 @@
|
||||
return (n === -1 ? arr.slice(n) : arr.slice(n, n + 1))[0];
|
||||
};
|
||||
var objectFromPairs = function objectFromPairs(arr) {
|
||||
return arr.reduce(function (a, _ref13) {
|
||||
var _ref14 = _slicedToArray(_ref13, 2),
|
||||
key = _ref14[0],
|
||||
val = _ref14[1];
|
||||
return arr.reduce(function (a, _ref17) {
|
||||
var _ref18 = _slicedToArray(_ref17, 2),
|
||||
key = _ref18[0],
|
||||
val = _ref18[1];
|
||||
|
||||
return a[key] = val, a;
|
||||
}, {});
|
||||
@ -1589,10 +1603,10 @@
|
||||
return _toConsumableArray(arr).sort(function (a, b) {
|
||||
return props.reduce(function (acc, prop, i) {
|
||||
if (acc === 0) {
|
||||
var _ref15 = orders && orders[i] === 'desc' ? [b[prop], a[prop]] : [a[prop], b[prop]],
|
||||
_ref16 = _slicedToArray(_ref15, 2),
|
||||
p1 = _ref16[0],
|
||||
p2 = _ref16[1];
|
||||
var _ref19 = orders && orders[i] === 'desc' ? [b[prop], a[prop]] : [a[prop], b[prop]],
|
||||
_ref20 = _slicedToArray(_ref19, 2),
|
||||
p1 = _ref20[0],
|
||||
p2 = _ref20[1];
|
||||
|
||||
acc = p1 > p2 ? 1 : p1 < p2 ? -1 : 0;
|
||||
}
|
||||
@ -1970,8 +1984,8 @@
|
||||
type: 'application/javascript; charset=utf-8'
|
||||
}));
|
||||
return new Promise(function (res, rej) {
|
||||
worker.onmessage = function (_ref17) {
|
||||
var data = _ref17.data;
|
||||
worker.onmessage = function (_ref21) {
|
||||
var data = _ref21.data;
|
||||
res(data), worker.terminate();
|
||||
};
|
||||
|
||||
@ -1988,18 +2002,18 @@
|
||||
var sample = function sample(arr) {
|
||||
return arr[Math.floor(Math.random() * arr.length)];
|
||||
};
|
||||
var sampleSize = function sampleSize(_ref18) {
|
||||
var _ref19 = _toArray(_ref18),
|
||||
arr = _ref19.slice(0);
|
||||
var sampleSize = function sampleSize(_ref22) {
|
||||
var _ref23 = _toArray(_ref22),
|
||||
arr = _ref23.slice(0);
|
||||
|
||||
var n = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;
|
||||
var m = arr.length;
|
||||
|
||||
while (m) {
|
||||
var i = Math.floor(Math.random() * m--);
|
||||
var _ref20 = [arr[i], arr[m]];
|
||||
arr[m] = _ref20[0];
|
||||
arr[i] = _ref20[1];
|
||||
var _ref24 = [arr[i], arr[m]];
|
||||
arr[m] = _ref24[0];
|
||||
arr[i] = _ref24[1];
|
||||
}
|
||||
|
||||
return arr.slice(0, n);
|
||||
@ -2046,17 +2060,17 @@
|
||||
return e.style.display = '';
|
||||
});
|
||||
};
|
||||
var shuffle = function shuffle(_ref21) {
|
||||
var _ref22 = _toArray(_ref21),
|
||||
arr = _ref22.slice(0);
|
||||
var shuffle = function shuffle(_ref25) {
|
||||
var _ref26 = _toArray(_ref25),
|
||||
arr = _ref26.slice(0);
|
||||
|
||||
var m = arr.length;
|
||||
|
||||
while (m) {
|
||||
var i = Math.floor(Math.random() * m--);
|
||||
var _ref23 = [arr[i], arr[m]];
|
||||
arr[m] = _ref23[0];
|
||||
arr[i] = _ref23[1];
|
||||
var _ref27 = [arr[i], arr[m]];
|
||||
arr[m] = _ref27[0];
|
||||
arr[i] = _ref27[1];
|
||||
}
|
||||
|
||||
return arr;
|
||||
@ -2130,8 +2144,8 @@
|
||||
};
|
||||
}).sort(function (a, b) {
|
||||
return compare(a.item, b.item) || a.index - b.index;
|
||||
}).map(function (_ref24) {
|
||||
var item = _ref24.item;
|
||||
}).map(function (_ref28) {
|
||||
var item = _ref28.item;
|
||||
return item;
|
||||
});
|
||||
};
|
||||
@ -2656,6 +2670,7 @@
|
||||
exports.extendHex = extendHex;
|
||||
exports.factorial = factorial;
|
||||
exports.fibonacci = fibonacci;
|
||||
exports.filterFalsy = filterFalsy;
|
||||
exports.filterNonUnique = filterNonUnique;
|
||||
exports.filterNonUniqueBy = filterNonUniqueBy;
|
||||
exports.findKey = findKey;
|
||||
@ -2766,6 +2781,7 @@
|
||||
exports.median = median;
|
||||
exports.memoize = memoize;
|
||||
exports.merge = merge;
|
||||
exports.midpoint = midpoint;
|
||||
exports.minBy = minBy;
|
||||
exports.minDate = minDate;
|
||||
exports.minN = minN;
|
||||
|
||||
2
dist/_30s.es5.min.js
vendored
2
dist/_30s.es5.min.js
vendored
File diff suppressed because one or more lines are too long
4
dist/_30s.esm.js
vendored
4
dist/_30s.esm.js
vendored
@ -327,6 +327,7 @@ const fibonacci = n =>
|
||||
(acc, val, i) => acc.concat(i > 1 ? acc[i - 1] + acc[i - 2] : i),
|
||||
[]
|
||||
);
|
||||
const filterFalsy = arr => arr.filter(Boolean);
|
||||
const filterNonUnique = arr => arr.filter(i => arr.indexOf(i) === arr.lastIndexOf(i));
|
||||
const filterNonUniqueBy = (arr, fn) =>
|
||||
arr.filter((v, i) => arr.every((x, j) => (i === j) === fn(v, x, i, j)));
|
||||
@ -710,6 +711,7 @@ const merge = (...objs) =>
|
||||
}, {}),
|
||||
{}
|
||||
);
|
||||
const midpoint = ([x1, y1], [x2, y2]) => [(x1 + x2) / 2, (y1 + y2) / 2];
|
||||
const minBy = (arr, fn) => Math.min(...arr.map(typeof fn === 'function' ? fn : val => val[fn]));
|
||||
const minDate = (...dates) => new Date(Math.min.apply(null, ...dates));
|
||||
const minN = (arr, n = 1) => [...arr].sort((a, b) => a - b).slice(0, n);
|
||||
@ -1321,4 +1323,4 @@ const zipWith = (...array) => {
|
||||
);
|
||||
};
|
||||
|
||||
export { CSVToArray, CSVToJSON, JSONToFile, JSONtoCSV, RGBToHex, URLJoin, UUIDGeneratorBrowser, UUIDGeneratorNode, all, allEqual, any, approximatelyEqual, arrayToCSV, arrayToHtmlList, ary, atob, attempt, average, averageBy, bifurcate, bifurcateBy, bind, bindAll, bindKey, binomialCoefficient, bottomVisible, btoa, byteSize, call, capitalize, capitalizeEveryWord, castArray, chainAsync, chunk, clampNumber, cloneRegExp, coalesce, coalesceFactory, collectInto, colorize, compact, compose, composeRight, converge, copyToClipboard, countBy, countOccurrences, counter, createElement, createEventHub, currentURL, curry, dayOfYear, debounce, decapitalize, deepClone, deepFlatten, deepFreeze, defaults, defer, degreesToRads, delay, detectDeviceType, difference, differenceBy, differenceWith, dig, digitize, distance, drop, dropRight, dropRightWhile, dropWhile, elementContains, elementIsVisibleInViewport, elo, equals, escapeHTML, escapeRegExp, everyNth, extendHex, factorial, fibonacci, filterNonUnique, filterNonUniqueBy, findKey, findLast, findLastIndex, findLastKey, flatten, flattenObject, flip, forEachRight, forOwn, forOwnRight, formatDuration, fromCamelCase, functionName, functions, gcd, geometricProgression, get, getColonTimeFromDate, getDaysDiffBetweenDates, getImages, getMeridiemSuffixOfInteger, getScrollPosition, getStyle, getType, getURLParameters, groupBy, hammingDistance, hasClass, hasFlags, hashBrowser, hashNode, head, hexToRGB, hide, httpGet, httpPost, httpsRedirect, hz, inRange, indentString, indexOfAll, initial, initialize2DArray, initializeArrayWithRange, initializeArrayWithRangeRight, initializeArrayWithValues, initializeNDArray, insertAfter, insertBefore, intersection, intersectionBy, intersectionWith, invertKeyValues, is, isAbsoluteURL, isAfterDate, isAnagram, isArrayLike, isBeforeDate, isBoolean, isBrowser, isBrowserTabFocused, isDivisible, isDuplexStream, isEmpty, isEven, isFunction, isLowerCase, isNegativeZero, isNil, isNull, isNumber, isObject, isObjectLike, isPlainObject, isPrime, isPrimitive, isPromiseLike, isReadableStream, isSameDate, isSorted, isStream, isString, isSymbol, isTravisCI, isUndefined, isUpperCase, isValidJSON, isWritableStream, join, last, lcm, longestItem, lowercaseKeys, luhnCheck, mapKeys, mapObject, mapString, mapValues, mask, matches, matchesWith, maxBy, maxDate, maxN, median, memoize, merge, minBy, minDate, minN, mostPerformant, negate, nest, nodeListToArray, none, nthArg, nthElement, objectFromPairs, objectToPairs, observeMutations, off, offset, omit, omitBy, on, onUserInputChange, once, orderBy, over, overArgs, pad, palindrome, parseCookie, partial, partialRight, partition, percentile, permutations, pick, pickBy, pipeAsyncFunctions, pipeFunctions, pluralize, powerset, prefix, prettyBytes, primes, promisify, pull, pullAtIndex, pullAtValue, pullBy, radsToDegrees, randomHexColorCode, randomIntArrayInRange, randomIntegerInRange, randomNumberInRange, readFileLines, rearg, recordAnimationFrames, redirect, reduceSuccessive, reduceWhich, reducedFilter, reject, remove, removeNonASCII, renameKeys, reverseString, round, runAsync, runPromisesInSeries, sample, sampleSize, scrollToTop, sdbm, serializeCookie, setStyle, shallowClone, shank, show, shuffle, similarity, size, sleep, smoothScroll, sortCharactersInString, sortedIndex, sortedIndexBy, sortedLastIndex, sortedLastIndexBy, splitLines, spreadOver, stableSort, standardDeviation, stringPermutations, stripHTMLTags, sum, sumBy, sumPower, symmetricDifference, symmetricDifferenceBy, symmetricDifferenceWith, tail, take, takeRight, takeRightWhile, takeWhile, throttle, timeTaken, times, toCamelCase, toCurrency, toDecimalMark, toHash, toKebabCase, toOrdinalSuffix, toSafeInteger, toSnakeCase, toTitleCase, toggleClass, tomorrow, transform, triggerEvent, truncateString, truthCheckCollection, unary, uncurry, unescapeHTML, unflattenObject, unfold, union, unionBy, unionWith, uniqueElements, uniqueElementsBy, uniqueElementsByRight, uniqueSymmetricDifference, untildify, unzip, unzipWith, validateNumber, when, without, words, xProd, yesNo, zip, zipObject, zipWith };
|
||||
export { CSVToArray, CSVToJSON, JSONToFile, JSONtoCSV, RGBToHex, URLJoin, UUIDGeneratorBrowser, UUIDGeneratorNode, all, allEqual, any, approximatelyEqual, arrayToCSV, arrayToHtmlList, ary, atob, attempt, average, averageBy, bifurcate, bifurcateBy, bind, bindAll, bindKey, binomialCoefficient, bottomVisible, btoa, byteSize, call, capitalize, capitalizeEveryWord, castArray, chainAsync, chunk, clampNumber, cloneRegExp, coalesce, coalesceFactory, collectInto, colorize, compact, compose, composeRight, converge, copyToClipboard, countBy, countOccurrences, counter, createElement, createEventHub, currentURL, curry, dayOfYear, debounce, decapitalize, deepClone, deepFlatten, deepFreeze, defaults, defer, degreesToRads, delay, detectDeviceType, difference, differenceBy, differenceWith, dig, digitize, distance, drop, dropRight, dropRightWhile, dropWhile, elementContains, elementIsVisibleInViewport, elo, equals, escapeHTML, escapeRegExp, everyNth, extendHex, factorial, fibonacci, filterFalsy, filterNonUnique, filterNonUniqueBy, findKey, findLast, findLastIndex, findLastKey, flatten, flattenObject, flip, forEachRight, forOwn, forOwnRight, formatDuration, fromCamelCase, functionName, functions, gcd, geometricProgression, get, getColonTimeFromDate, getDaysDiffBetweenDates, getImages, getMeridiemSuffixOfInteger, getScrollPosition, getStyle, getType, getURLParameters, groupBy, hammingDistance, hasClass, hasFlags, hashBrowser, hashNode, head, hexToRGB, hide, httpGet, httpPost, httpsRedirect, hz, inRange, indentString, indexOfAll, initial, initialize2DArray, initializeArrayWithRange, initializeArrayWithRangeRight, initializeArrayWithValues, initializeNDArray, insertAfter, insertBefore, intersection, intersectionBy, intersectionWith, invertKeyValues, is, isAbsoluteURL, isAfterDate, isAnagram, isArrayLike, isBeforeDate, isBoolean, isBrowser, isBrowserTabFocused, isDivisible, isDuplexStream, isEmpty, isEven, isFunction, isLowerCase, isNegativeZero, isNil, isNull, isNumber, isObject, isObjectLike, isPlainObject, isPrime, isPrimitive, isPromiseLike, isReadableStream, isSameDate, isSorted, isStream, isString, isSymbol, isTravisCI, isUndefined, isUpperCase, isValidJSON, isWritableStream, join, last, lcm, longestItem, lowercaseKeys, luhnCheck, mapKeys, mapObject, mapString, mapValues, mask, matches, matchesWith, maxBy, maxDate, maxN, median, memoize, merge, midpoint, minBy, minDate, minN, mostPerformant, negate, nest, nodeListToArray, none, nthArg, nthElement, objectFromPairs, objectToPairs, observeMutations, off, offset, omit, omitBy, on, onUserInputChange, once, orderBy, over, overArgs, pad, palindrome, parseCookie, partial, partialRight, partition, percentile, permutations, pick, pickBy, pipeAsyncFunctions, pipeFunctions, pluralize, powerset, prefix, prettyBytes, primes, promisify, pull, pullAtIndex, pullAtValue, pullBy, radsToDegrees, randomHexColorCode, randomIntArrayInRange, randomIntegerInRange, randomNumberInRange, readFileLines, rearg, recordAnimationFrames, redirect, reduceSuccessive, reduceWhich, reducedFilter, reject, remove, removeNonASCII, renameKeys, reverseString, round, runAsync, runPromisesInSeries, sample, sampleSize, scrollToTop, sdbm, serializeCookie, setStyle, shallowClone, shank, show, shuffle, similarity, size, sleep, smoothScroll, sortCharactersInString, sortedIndex, sortedIndexBy, sortedLastIndex, sortedLastIndexBy, splitLines, spreadOver, stableSort, standardDeviation, stringPermutations, stripHTMLTags, sum, sumBy, sumPower, symmetricDifference, symmetricDifferenceBy, symmetricDifferenceWith, tail, take, takeRight, takeRightWhile, takeWhile, throttle, timeTaken, times, toCamelCase, toCurrency, toDecimalMark, toHash, toKebabCase, toOrdinalSuffix, toSafeInteger, toSnakeCase, toTitleCase, toggleClass, tomorrow, transform, triggerEvent, truncateString, truthCheckCollection, unary, uncurry, unescapeHTML, unflattenObject, unfold, union, unionBy, unionWith, uniqueElements, uniqueElementsBy, uniqueElementsByRight, uniqueSymmetricDifference, untildify, unzip, unzipWith, validateNumber, when, without, words, xProd, yesNo, zip, zipObject, zipWith };
|
||||
|
||||
4
dist/_30s.js
vendored
4
dist/_30s.js
vendored
@ -333,6 +333,7 @@
|
||||
(acc, val, i) => acc.concat(i > 1 ? acc[i - 1] + acc[i - 2] : i),
|
||||
[]
|
||||
);
|
||||
const filterFalsy = arr => arr.filter(Boolean);
|
||||
const filterNonUnique = arr => arr.filter(i => arr.indexOf(i) === arr.lastIndexOf(i));
|
||||
const filterNonUniqueBy = (arr, fn) =>
|
||||
arr.filter((v, i) => arr.every((x, j) => (i === j) === fn(v, x, i, j)));
|
||||
@ -716,6 +717,7 @@
|
||||
}, {}),
|
||||
{}
|
||||
);
|
||||
const midpoint = ([x1, y1], [x2, y2]) => [(x1 + x2) / 2, (y1 + y2) / 2];
|
||||
const minBy = (arr, fn) => Math.min(...arr.map(typeof fn === 'function' ? fn : val => val[fn]));
|
||||
const minDate = (...dates) => new Date(Math.min.apply(null, ...dates));
|
||||
const minN = (arr, n = 1) => [...arr].sort((a, b) => a - b).slice(0, n);
|
||||
@ -1410,6 +1412,7 @@
|
||||
exports.extendHex = extendHex;
|
||||
exports.factorial = factorial;
|
||||
exports.fibonacci = fibonacci;
|
||||
exports.filterFalsy = filterFalsy;
|
||||
exports.filterNonUnique = filterNonUnique;
|
||||
exports.filterNonUniqueBy = filterNonUniqueBy;
|
||||
exports.findKey = findKey;
|
||||
@ -1520,6 +1523,7 @@
|
||||
exports.median = median;
|
||||
exports.memoize = memoize;
|
||||
exports.merge = merge;
|
||||
exports.midpoint = midpoint;
|
||||
exports.minBy = minBy;
|
||||
exports.minDate = minDate;
|
||||
exports.minN = minN;
|
||||
|
||||
@ -1136,6 +1136,20 @@
|
||||
"hash": "a6d182258648783ab09e72d4c40ac9de0dd3687a3b82c27715efab34d1836e1c"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "filterFalsy",
|
||||
"type": "snippetListing",
|
||||
"attributes": {
|
||||
"tags": [
|
||||
"array",
|
||||
"beginner"
|
||||
],
|
||||
"archived": false
|
||||
},
|
||||
"meta": {
|
||||
"hash": "313401bff0dc161b9bfb2b123f7a98eb6630dc5d2ae1bb31400a340203a50255"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "filterNonUnique",
|
||||
"type": "snippetListing",
|
||||
@ -2803,6 +2817,21 @@
|
||||
"hash": "13f1b8dca2fb1c6ebba61abb7e5784fc80288e59f4979e463c5f4b81497d76bd"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "midpoint",
|
||||
"type": "snippetListing",
|
||||
"attributes": {
|
||||
"tags": [
|
||||
"math",
|
||||
"array",
|
||||
"beginner"
|
||||
],
|
||||
"archived": false
|
||||
},
|
||||
"meta": {
|
||||
"hash": "799134f9e026da20af240ed4d97b418bfac198394cd559cca19b143d3f7d4fb7"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "minBy",
|
||||
"type": "snippetListing",
|
||||
@ -3304,7 +3333,7 @@
|
||||
"archived": false
|
||||
},
|
||||
"meta": {
|
||||
"hash": "dcdf66e8d0eb4a1761c6b767b8cc350757087ae817ec371436faab0fff7c0051"
|
||||
"hash": "4815876fd6dbb17ad34c0d8918e7a72d837104f9beee7dc51b0fa73057b9e83e"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -3676,7 +3705,7 @@
|
||||
"archived": false
|
||||
},
|
||||
"meta": {
|
||||
"hash": "2fd54c9fc1fb5b0a981df69501b518d5830ea77544d4d5290c7cc13745ca00ea"
|
||||
"hash": "ec9cb9384817f84cf0bacd62a23b69b2304fa2cf0352b16d3950b21d48c04f11"
|
||||
}
|
||||
},
|
||||
{
|
||||
|
||||
@ -1675,6 +1675,27 @@
|
||||
"hash": "a6d182258648783ab09e72d4c40ac9de0dd3687a3b82c27715efab34d1836e1c"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "filterFalsy",
|
||||
"type": "snippet",
|
||||
"attributes": {
|
||||
"fileName": "filterFalsy.md",
|
||||
"text": "Filters out the falsy values in an array.\r\n\r\nUse `Array.prototype.filter()` to get an array containing only truthy values.",
|
||||
"codeBlocks": {
|
||||
"es6": "const filterFalsy = arr => arr.filter(Boolean);",
|
||||
"es5": "var filterFalsy = function filterFalsy(arr) {\n return arr.filter(Boolean);\n};",
|
||||
"example": "filterFalsy(['', true, {}, false, 'sample', 1, 0]); // [true, {}, 'sample', 1]"
|
||||
},
|
||||
"tags": [
|
||||
"array",
|
||||
"beginner"
|
||||
]
|
||||
},
|
||||
"meta": {
|
||||
"archived": false,
|
||||
"hash": "313401bff0dc161b9bfb2b123f7a98eb6630dc5d2ae1bb31400a340203a50255"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "filterNonUnique",
|
||||
"type": "snippet",
|
||||
@ -4126,6 +4147,28 @@
|
||||
"hash": "13f1b8dca2fb1c6ebba61abb7e5784fc80288e59f4979e463c5f4b81497d76bd"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "midpoint",
|
||||
"type": "snippet",
|
||||
"attributes": {
|
||||
"fileName": "midpoint.md",
|
||||
"text": "Calculates the midpoint between two pairs of (x,y) points.\n\nDestructure the array to get `x1`, `y1`, `x2` and `y2`, calculate the midpoint for each dimension by dividing the sum of the two endpoints by `2`.",
|
||||
"codeBlocks": {
|
||||
"es6": "const midpoint = ([x1, y1], [x2, y2]) => [(x1 + x2) / 2, (y1 + y2) / 2];",
|
||||
"es5": "function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance\"); }\n\nfunction _iterableToArrayLimit(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nvar midpoint = function midpoint(_ref, _ref2) {\n var _ref3 = _slicedToArray(_ref, 2),\n x1 = _ref3[0],\n y1 = _ref3[1];\n\n var _ref4 = _slicedToArray(_ref2, 2),\n x2 = _ref4[0],\n y2 = _ref4[1];\n\n return [(x1 + x2) / 2, (y1 + y2) / 2];\n};",
|
||||
"example": "midpoint([2, 2], [4, 4]); // [3, 3]\nmidpoint([4, 4], [6, 6]); // [5, 5]\nmidpoint([1, 3], [2, 4]); // [1.5, 3.5]"
|
||||
},
|
||||
"tags": [
|
||||
"math",
|
||||
"array",
|
||||
"beginner"
|
||||
]
|
||||
},
|
||||
"meta": {
|
||||
"archived": false,
|
||||
"hash": "799134f9e026da20af240ed4d97b418bfac198394cd559cca19b143d3f7d4fb7"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "minBy",
|
||||
"type": "snippet",
|
||||
@ -4865,7 +4908,7 @@
|
||||
},
|
||||
"meta": {
|
||||
"archived": false,
|
||||
"hash": "dcdf66e8d0eb4a1761c6b767b8cc350757087ae817ec371436faab0fff7c0051"
|
||||
"hash": "4815876fd6dbb17ad34c0d8918e7a72d837104f9beee7dc51b0fa73057b9e83e"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -5412,7 +5455,7 @@
|
||||
},
|
||||
"meta": {
|
||||
"archived": false,
|
||||
"hash": "2fd54c9fc1fb5b0a981df69501b518d5830ea77544d4d5290c7cc13745ca00ea"
|
||||
"hash": "ec9cb9384817f84cf0bacd62a23b69b2304fa2cf0352b16d3950b21d48c04f11"
|
||||
}
|
||||
},
|
||||
{
|
||||
|
||||
@ -757,6 +757,13 @@
|
||||
],
|
||||
"description": "Generates an array, containing the Fibonacci sequence, up until the nth term.\n\nCreate an empty array of the specific length, initializing the first two values (`0` and `1`).\nUse `Array.prototype.reduce()` to add values into the array, using the sum of the last two values, except for the first two"
|
||||
},
|
||||
"filterFalsy": {
|
||||
"prefix": "30s_filterFalsy",
|
||||
"body": [
|
||||
"const filterFalsy = arr => arr.filter(Boolean);"
|
||||
],
|
||||
"description": "Filters out the falsy values in an array."
|
||||
},
|
||||
"filterNonUnique": {
|
||||
"prefix": "30s_filterNonUnique",
|
||||
"body": [
|
||||
@ -1826,6 +1833,13 @@
|
||||
],
|
||||
"description": "Creates a new object from the combination of two or more objects.\n\nUse `Array.prototype.reduce()` combined with `Object.keys(obj)` to iterate over all objects and keys.\nUse `hasOwnProperty()` and `Array.prototype.concat()` to append values for keys existing in multiple objects"
|
||||
},
|
||||
"midpoint": {
|
||||
"prefix": "30s_midpoint",
|
||||
"body": [
|
||||
"const midpoint = ([x1, y1], [x2, y2]) => [(x1 + x2) / 2, (y1 + y2) / 2];"
|
||||
],
|
||||
"description": "Calculates the midpoint between two pairs of (x,y) points.\n\nDestructure the array to get `x1`, `y1`, `x2` and `y2`, calculate the midpoint for each dimension by dividing the sum of the two endpoints by `2`"
|
||||
},
|
||||
"minBy": {
|
||||
"prefix": "30s_minBy",
|
||||
"body": [
|
||||
|
||||
Reference in New Issue
Block a user