您的位置:首页 > Web前端 > JavaScript

【实例讲解】JS中形参、实参可以不一致

2017-11-24 13:52 316 查看
function myFunction()
{
var x=5;
[code]return x;

}[/code]
补充:JS中带返回值的函数,在函数定义时不体现

//正文

1.实参与形参个数可以有偏差,不会因为参数不统一而错误。

例1:

?
例2:

?
2.JS函数不能重载。

因为“函数重载”靠的就是相同函数名根据参数的不同,匹配特定函数,从而执行函数的过程;而JS函数不再排斥“异形”函数,缺失了辨别相同函数名的不同函数的过程,相同函数名的情况下,JS调用时,只会执行最后一个所调函数。

例3:

?
例4:

?
3.函数运用arguments对象,很有特点

arguments对象的使用,很好地解释了支持形参、实参不一致而不出错的原理性问题。

3.1 arguments[index]指定参数值,index为参数的索引

例5:

?
3.2 arguments.length得到参数的个数

例6:

?
3.3 arguments.length的扩展运用

例7:

?
4.一个显而易见的错误(只为下面说明问题)

看了例7,可能会有点迷糊,因而添加例8、例9,都说明了一个问题,参数为函数体提供必要信息,用于可控地实现功能。函数(function:功能)

例8:

?
例9:

?
简单比较例2、例4、例8,可以得出这样的结论,JS中的函数体与形参、实参以及形参与实参的关系是:

遵循一个原则:函数实现功能

函数体与形参关系:形参必须满足函数体的必要需求,否则没法进行,即使用了形参未定义的‘字面量’,出错:c is not defined 。

形参与实参关系:实参在形参的标尺下,多出的被拦截而被忽略,缺少的被判断为undefined(不存在),但都不报错。

智能:是说JS函数对多出的实参去粗取精,对少的实参做了适当的处理,没有雷厉加之,使得函数运行更大限度地平稳协调。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  javascript 形参 实参