var friends =[{
name:'Anna',
books:['Bible','Harry Potter'],
age:21},{
name:'Bob',
books:['War and peace','Romeo and Juliet'],
age:26},{
name:'Alice',
books:['The Lord of the Rings','The Shining'],
age:18}];// allbooks - list which will contain all friends' books + // additional list contained in initialValuevar allbooks = friends.reduce(function(prev, curr){return[...prev,...curr.books];},['Alphabet']);// allbooks = [// 'Alphabet', 'Bible', 'Harry Potter', 'War and peace', // 'Romeo and Juliet', 'The Lord of the Rings',// 'The Shining'// ]
13、功能型函数管道
// Building-blocks to use for compositionconstdouble= x => x + x;consttriple= x =>3* x;constquadruple= x =>4* x;// Function composition enabling pipe functionalityconstpipe=(...functions)=> input => functions.reduce((acc, fn)=>fn(acc),
input
);// Composed functions for multiplication of specific valuesconst multiply6 =pipe(double, triple);const multiply9 =pipe(triple, triple);const multiply16 =pipe(quadruple, quadruple);const multiply24 =pipe(double, triple, quadruple);// Usagemultiply6(6);// 36multiply9(9);// 81multiply16(16);// 256multiply24(10);// 240