博客列表 >模板函数 and 函数的参数与返回值

模板函数 and 函数的参数与返回值

水生命之源
水生命之源原创
2022年04月01日 10:14:22647浏览

模板函数

使用模板字面量为参数的函数
模板函数,有的书也翻译为”标签函数”

  1. // 模板函数的参数:
  2. // 第一个参数: 模板字面量中的"字符串字面量"
  3. // 第二个参数: 模板字面量中的"插值"数组
  4. function calc(strings, ...args) {
  5. console.log(strings);
  6. console.log(args);
  7. console.log(args[0] * args[1]);
  8. }
  9. //调用
  10. calc`数量: ${10}单价: ${500}`;
  11. // Array(3) [ "数量", "单价", "" ]
  12. // Array [ 10, 500 ]
  13. // 5000

正常的参数

  1. let f = (a, b) => a + b;
  2. console.log(f(10, 20)); // 30

参数不足: 默认参数

  1. console.log(f(10)); //NaN:not a number
  2. f = (a, b = 2) => a + b;
  3. console.log(f(10)); //12

参数过多: …剩余参数

  1. f = (a, b, ...c) => console.log(a, b, c) ;
  2. // ...rest:用在函数的参数中,归并
  3. console.log(f(2, 3, 4, 5, 6, 7));
  4. //2 3 Array(4) [ 4, 5, 6, 7 ]
  5. let arr2 = [1, 2, 3, 4, 5];
  6. console.log(f(...arr2));
  7. //与下面的语句功能一样
  8. console.log(f(1, 2, 3, 4, 5));
  9. //...用在参数调用时,是解包:打散
  10. //下面函数功能:数组中的元素累加求和
  11. f = (...arr2) => arr2.reduce((p,c) => p + c);
  12. console.log(f(...arr2));//15

函数返回值:只能有一个返回值

需要返回多个值时:数组或对象
本质 仍然返回一个值

返回数组

  1. let fn = () => [1, 2, 3];
  2. let res = fn();
  3. console.log(res);//Array(3) [ 1, 2, 3 ]

返回对象

  1. let fn3 = () => ({
  2. id: 2,
  3. name: "admin",
  4. age: 28,
  5. });
  6. let res3 = fn3();
  7. console.log(res3);
  8. // Object { id: 2, name: "admin", age: 28 }
声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议