温故而知新之- Javascript函数传参

举报
余人杰 发表于 2020/09/13 23:36:44 2020/09/13
【摘要】 函数传参是我们以后经常用到跟必须用到的,现在我们先来复习函数的参数。

首页,我们要回顾下什么是形参和实参。

形参,指的是函数定义声明时设置的参数。

实参,指的是在调用函数时,传递进去的值。

举例:

// id 为形参
function info(id) {
    return '我的id是:' + id;
}
// 参数 hw91364016 为实参
console.log(info(hw91364016)); // '我的id是:hw91364016'


关于形参、实参的数量的知识点需要注意下:

1.形参的数量大于实参的时,对应不上形参的值为undefined。

2.实参的数量大于形参的时,多传的实参的值将被忽略,且不会报错。


第一种情况演示如下:

// id 为形参
function info(id) {
    return '我的id是:' + id;
}
// 不传递实参
console.log(info()); // '我的id是:undefined'


某些情况,我们需要函数有默认参数,需要怎么实现?

有两种方法。如下:

function info(id) {
    id = id || 'hw91364016';
  return '我的id是:' + id;
}


下面这种方法比较常用:

function info(id = 'hw91364016') {
  return '我的id是:' + id;
}



我们也可以将函数作为参数进行传递

function mapFun(num) {
    return num + 2;
}
let results = [0, 1, 2, 3, 4].map(mapFun);
console.log(results); // [2, 3, 4, 5, 6]


还有一个知识点需要知道,就是在不知道参数数量时,可以使用arguments获取函数的参数集合。

function counter() {
  return [...arguments].reduce((sum, num) => {
    return (sum += num);
  }, 0);
}
console.log(counter(4, 8, 3, 6, 9)); // 30


总结:函数可以将重复的功能代码归为一个模块,然后可以将模块里面反复用到的变量提取为参数,这样一来,可以将功能更丰富化,理解掌握好函数参数,可以提交工作效率。学无止境,有你我同行,加油。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。