Java Script
[ Codecademy ] lodash
Jassy
2020. 7. 27. 14:30
const _ = {
clamp (number, lower, upper) {
const lowerClampedValue = Math.max(number, lower);
const clampedValue = Math.min(lowerClampedValue, upper);
return clampedValue ;
},
inRange(number, start, end) {
if ( end === undefined ) {
end = start;
start = 0;
}
if ( start > end ) {
const temp = end
end = start ;
start = temp;
}
const isInRange =
start <= number && number < end; return isInRange ;
},
words (string) {
const words = string.split(' ') ; return words
},
pad (string, length) {
if (string.length >= length) {
return string;
}
const startPaddingLength =
Math.floor((length-string.length) /2) ;
const endPaddingLength =
length - string.length - startPaddingLength ;
const paddedString =
' '.repeat(startPaddingLength) + string + ' '.repeat(endPaddingLength);
return paddedString ;
},
has (object, key) {
const hasValue = object[key] ;
if (hasValue != undefined )
{return true;} return false;
},
invert (object) {
const invertedObject = {};
for (let key in object) {
const originalValue = object[key];
invertedObject[originalValue] = key;
} return invertedObject;
},
findKey (object, predicate) {
for (let key in object) {
const value = object[key];
const predicateReturnValue = predicate(value);
if (predicateReturnValue) return key;
} return undefined;
},
drop (array, n) {
if ( typeof(n) === 'undefined') {
n = 1
} const droppedArray = array.slice(n);
return droppedArray ;
},
dropWhile(array, predicate) {
const cb = (element, index) => {
return !predicate(element, index, array);
}
let dropNumber = array.findIndex(cb);
let droppedArray = this.drop(array, dropNumber);
return droppedArray;
},
chunk(array, size) {
if (size === undefined) {
size = 1; }
const arrayChunks = [];
for (let i=0; i< array.length; i+= size) {
const arrayChunk = array.slice(i, i+size);
arrayChunks.push(arrayChunk);
} return arrayChunks;
},
};
// Do not write or modify code below this line.
module.exports = _;