我是一个小问题

我是一个小问题

function getAvg(num1,num2){

	}
	getAvg(11,22,33,44,55);
	能这样写吗,上面只有两个参数,但调用的时候却写了5个值

正在回答

登陆购买课程后可参与讨论,去登陆

3回答

可以的,在js里函数定义的参数和调用的数量可以不相等。

如果调用时的参数少于定义时的参数,定义里多出的参数值等于undefined。

如果调用时的参数多于定义时的参数,在函数内没做处理的情况下,多余参数自动忽略,无法被函数使用。在需要使用多出来的参数时,可以用arguments数组来获得多余参数并使用。你可以查一下arguments的用法。

Miss路 2017-07-19 09:41:25

不能,方法中没有写形参的话,调用的时候也不能写的。必须是一样的数量,还要一 一对应。这样的问题你自己写出来试一下就知道了,学习方法很重要。加油!

  • 提问者 透明的世界 #1
    function getAvg(){ var sum=0; for(var i=0;i<arguments.length;i++){ sum+=arguments[i]; } return sum; } var mm=getAvg(1,2,3,4,5); document.write(mm); 这个可以啊
    2017-07-19 09:43:47
  • 慢l慢 #2
    身为助教回答问题前还是做做功课吧,你毕竟代表的是慕课网啊。
    2017-07-19 10:05:49
Miss路 2017-07-18 20:09:39

不可以,参数个数和位置是一定要对应的。祝学习愉快!

  • 提问者 透明的世界 #1
    方法里没有参数的话,调用时就能写几个值吧
    2017-07-18 22:45:46
  • 慢l慢 回复 提问者 透明的世界 #2
    方法里有参数也可以写你后面回复里的那个函数
    2017-07-19 10:01:21
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
HTML5与CSS3实现动态网页 2018
  • 参与学习       1887    人
  • 提交作业       4643    份
  • 解答问题       5760    个

有HTML和CSS基础,却不知道如何进阶?本路径带你通过系统学习,完成从“会做网页”到“做出好的动态网页”的蜕变,迈出成为前端工程师的第一步。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师