Blogger Information
Blog 29
fans 0
comment 0
visits 14067
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
函数参数与返回值、模板字面量和模板函数学习小结
P粉317509817
Original
512 people have browsed it

函数的参数和返回值

1、函数传参

  • 函数参数与传递参数相等时,参数一一对应

  1. let fn = (a,b) => console.log(a + b);
  2. fn(1,2);
运行结果:

  • 当传递参数不足的时候,可以设置默认参数,即指定b的默认值

    • 当b在传参过程中没有指定时,会使用默认值,但是如果b在传参中被指定,则会采用b的传参值

  1. let fn1 =(a,b=0)=>console.log(a + b);
  2. fn1(4,5);
  3. fn1(1)
运行结果:

  • 参数过多

    • 使用…rest语法,将过多的参数归并为一个数组

    • ..rest 语法不仅可以用来归并,也可以用来解包

  1. let fn2 = (a,b,...c) => console.log(a,b,c);
  2. fn2(1,2,3,4,5,6,7,8);
  1. let arr =[1,2,3,4,5];
  2. console.log(...arr);
运行结果:

程序1:

程序2:

2、函数返回值

  • 函数只能返回一个返回值,当要返回多个返回值时,可以压入数组或者对象进行返回

    • 数组返回

    • 对象返回

      数组返回:
      1. let fn3 = () => [1,2,3];
      2. let res1 = fn3();
      3. console.log(res1);
      对象返回:
      1. let fn4 =() =>({
      2. id:2,
      3. name:'admin',
      4. age:28,
      5. })
      6. let res2 = fn4();
      7. console.log(res2);
运行结果:

数组返回:

对象返回:

模板字面量和模板函数

1、模板字面量

  • 反引号:模板字面量, 支持在字符串插入变量/表达式: 插值

  • 变量/表达式: 在模板字面量,使用 ‘${xxx}’来引用,就是一个占位符

  1. console.log(`Hello world`);
  2. let name = '猪老师';
  3. console.log(`hello ${name}`);

运行结果:

2、模板函数

  • 使用模板字面量为参数的参数

    • 模板函数的参数:

    • 第一个参数: 模板字面量中的”字符串字面晨”

    • 第二个参数: 模板字面量中的”插值”数组

  1. calc`数量${10}单价:${500}`;
  2. function calc(string,...args){
  3. console.log(string);
  4. console.log(args);
  5. console.log(args[0] * args[1]);
  6. }
运行结果:

注释

  1. // 匿名函数只能先声明再调用,命名函数可以先调用后声明
  2. /**
  3. * * 模板字面量: 可以使用插值表达式的字符串
  4. * * 模板函数: 可以使用"模板字面量"为参数的函数
  5. * * 模板函数,就是在"模板字面量"之前加一个标签/标识符,而这个标签,就是一个函数名
  6. * * 模板函数的参数是有约定的, 不能乱写, 第一个是字面量数组,从第二起才是内部的占位符参数
  7. */
  8. // * 模板字面量, 也叫"模板字符串" , 是同义词,我觉得用"模板字面量"更直观,准确
  9. // * 模板函数, 有的书也翻译与"标签函数", 因为 它使用"模板字面量"做参数,称为"模板函数"更直观, 一看知识必须传一个模板字面量当参数
Correcting teacher:PHPzPHPz

Correction status:qualified

Teacher's comments:
Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments
Author's latest blog post