函数参数与返回值,模板字面量与模板函数
发布于:2022-04-01 11:07:07
次阅读
函数参数与返回值
// 1. 参数不足: 默认参数f = (a, b = 0) => a + b;console.log(f(10, 5));// 2. 参数过多: ...剩余参数f = (...arr) => arr.reduce((a, c) => a + c);console.log(f(1, 2, 3, 4, 5, 6, 7, 8, 9, 10));// 返回值: 函数只能有一个返回值,默认单值返回// 需要返回多个值怎么办? 数组,对象let fn = () => [1, 2, 3];let res = fn();//返回数组console.log(res);fn = () => ({ id: 3, name: 'abc', age: 15,});res = fn();//返回对象console.log(res);
模板字面量与模板函数
//1 模板字面量console.log('Hello world');// 反引号:模板字面量, 支持在字符串插入变量/表达式: 插值let name = '小刘';console.log('hello ' + name);// 变量/表达式: 在模板字面量,使用 '${xxx}'来引用,就是一个占位符console.log(`hello ${name}`);let gender = 1;console.log(`${gender ? `男:${name}` : `女`}`);// 2. 模板函数 (使用模板字面量为参数的参数)calc`数量: ${10}单价: ${500}`;function calc(strings, ...args) { console.log(strings); console.log(args); console.log(args[0] * args[1]);}/** * * 模板字面量: 可以使用插值表达式的字符串 * * 模板函数: 可以使用"模板字面量"为参数的函数 * * 模板函数,就是在"模板字面量"之前加一个标签/标识符,而这个标签,就是一个函数名 * * 模板函数的参数是有约定的, 不能乱写, 第一个是字面量数组,从第二起才是内部的占位符参数*/// * 模板字面量, 也叫"模板字符串" , 是同义词,我觉得用"模板字面量"更直观,准确// * 模板函数, 有的书也翻译与"标签函数", 因为 它使用"模板字面量"做参数,称为"模板函数"更直观, 一看知识必须传一个模板字面量当参数