参数放在一个对象里

参数放在一个对象里

将这个参数放在一个对象里,这样可以任意传递参数个数,而且不用在意参数的顺序?这句话怎么理解呢?可以结合课程中的代码解释一下吗谢谢!

正在回答

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

1回答

你好同学,假如不定义一个对象,直接把参数放在函数括号里面,就是如下这样:

http://img1.sycdn.imooc.com//climg/5cc56b240001fb2307040073.jpg

那么在调用函数时,上面的形参与调用时传入的实参是根据位置一一对应的,也就是是调用函数传入参数必须按照规定的顺序,如下:

http://img1.sycdn.imooc.com//climg/5cc56b9e00013ced07370130.jpg

假如还想要加参数,就得继续往函数括号里面添加:

http://img1.sycdn.imooc.com//climg/5cc56c550001925c08370073.jpg

如果把参数定义成一个对象,因为对象是根据属性名的去匹配的,所以实参的位置不需要注意顺序问题了:

http://img1.sycdn.imooc.com//climg/5cc56d260001671e07830140.jpg

而且想要加参数,不用像上面那样去加形参了,直接调用的时候,在对象中添加属性,在函数中根据对象的属性名去获取就非常方便了:

http://img1.sycdn.imooc.com//climg/5cc56d5f000180d309530152.jpg

祝学习愉快 ,望采纳。

  • saltymelon 提问者 #1
    那把参数定义为一个对象的语法是什么?比如这里的opts,好像也没有什么定义语句,就是相当于传入一个参数,但是却可以访问各种属性,比如opts.searchClass?
    2019-04-28 17:21:55
  • 好帮手慕夭夭 回复 提问者 saltymelon #2
    你好同学,不需要定义的,可以参考一下老师回复的最后一个截图,调用函数时传入的是一个对象,那么opts表示的就是这个对象哦
    2019-04-28 17:41:39
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

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