Functional Programming in JS - 6

JavaScript currying example for functional programming

by sendil J

JavaScript

// Method 1
/*let doggy = (name,breed,age) =>
	name + ' is a ' +
	breed + ' of age ' +
	age 
			console.log(doggy('sam', 'lab', '2yrs'));
			//output is - sam is a lab of age 2yrs
	*/
	
// Method 2
 /*let doggy =
		name =>
			breed =>
				age =>
					name + ' is a ' +
					breed + ' of age ' +
					age */
					
					
		/* console.log(doggy('sam')('lab')('2yrs'));
			 //output is - sam is a lab of age 2yrs
		*/
	
/* 	let samProfile = doggy('sam')
	let samBreed = samProfile('lab')
	
	console.log(samBreed('2yrs')) */
	//output is - sam is a lab of age 2yrs
	
	// Method 3
	
	let doggy = (name,breed,age) =>
	name + ' is a ' +
	breed + ' of age ' +
	age 
	
	doggy = _.curry(doggy); 
	
	let samProfile = doggy('sam')
	let samBreed = samProfile('lab')
	
	console.log(samBreed('2yrs'))// Lo-Dash framework is added