expandEnd
expandEnd
(length: number, char: Character) => (aString: string) => string
Expand a string to
length
by appendingchar
const expandTo3 = expandEnd(3, '-') expandTo3('a') // is 'a--' expandTo3('ab') // is 'ab-' expandTo3('abc') // is 'abc'
const expandTo3 = expandEnd(3, '-') expandTo3('a') // is 'a--' expandTo3('ab') // is 'ab-' expandTo3('abc') // is 'abc'
const expandTo3 = expandEnd(3, '-') expandTo3('a') // is 'a--' expandTo3('ab') // is 'ab-' expandTo3('abc') // is 'abc'
const expandTo3 = expandEnd(3, '-') expandTo3('a') // is 'a--' expandTo3('ab') // is 'ab-' expandTo3('abc') // is 'abc'
One case for expandEnd is to format data. Below, we print a brownie recipe while aligning the amounts.
const brownies = { Sugar: '1 1/2 Cups', Flour: '3/4 Cup', Cocoa: '2/3 Cup', 'Chocolate Chips': '1/2 Cup', Eggs: '2', } const appendSpaces = expandEnd(20, ' ') const formattedRecipe = Object.entries(brownies) .map(([ingredient, amount]) => { return appendSpaces(ingredient) + amount }) .join('\n') console.log(formattedRecipe) // prints // Sugar 1 1/2 Cups // Flour 3/4 Cup // Cocoa 2/3 Cup // Chocolate Chips 1/2 Cup // Eggs 2
const brownies = { Sugar: '1 1/2 Cups', Flour: '3/4 Cup', Cocoa: '2/3 Cup', 'Chocolate Chips': '1/2 Cup', Eggs: '2', } const appendSpaces = expandEnd(20, ' ') const formattedRecipe = Object.entries(brownies) .map(([ingredient, amount]) => { return appendSpaces(ingredient) + amount }) .join('\n') console.log(formattedRecipe) // prints // Sugar 1 1/2 Cups // Flour 3/4 Cup // Cocoa 2/3 Cup // Chocolate Chips 1/2 Cup // Eggs 2
const brownies = { Sugar: '1 1/2 Cups', Flour: '3/4 Cup', Cocoa: '2/3 Cup', 'Chocolate Chips': '1/2 Cup', Eggs: '2', } const appendSpaces = expandEnd(20, ' ') const formattedRecipe = Object.entries(brownies) .map(([ingredient, amount]) => { return appendSpaces(ingredient) + amount }) .join('\n') console.log(formattedRecipe) // prints // Sugar 1 1/2 Cups // Flour 3/4 Cup // Cocoa 2/3 Cup // Chocolate Chips 1/2 Cup // Eggs 2
const brownies = { Sugar: '1 1/2 Cups', Flour: '3/4 Cup', Cocoa: '2/3 Cup', 'Chocolate Chips': '1/2 Cup', Eggs: '2', } const appendSpaces = expandEnd(20, ' ') const formattedRecipe = Object.entries(brownies) .map(([ingredient, amount]) => { return appendSpaces(ingredient) + amount }) .join('\n') console.log(formattedRecipe) // prints // Sugar 1 1/2 Cups // Flour 3/4 Cup // Cocoa 2/3 Cup // Chocolate Chips 1/2 Cup // Eggs 2