<script>
function sum(arg1,arg2) //加法函数
{
var realArgCount = arguments.length; //调用函数时传递的实参个数
var frmArgCount = sum.length; //函数定义时的形参个数
if(realArgCount < frmArgCount) //如果实际参数个数小于形参个数
{
var e = new Error(); //定义错误信息,然后抛出
e.number = 1000001; //错误编号
e.message = "实际参数个数不符合要求!" //错误消息
throw e;
}
return arguments[0] + arguments[1];//参数符合要求则从arguments对象中提取实参并返回两者的和
}
try
{
document.write("<p><h1>arguments对象测试</h1></p>"); //输出标题
document.write("正确调用的结果:"+sum(10,20));//输出正确调用的结果
document.write("<br>不符合规则的调用结果:"); //人为引发一个不符合规则的调用方式
document.write(sum(10));
}
catch(e) //捕捉错误信息
{
alert(e.number+"错误号:"+e.message);
}
</script>
相关文章
- JavaScript函数之实际参数对象(arguments) / callee属性 / caller属性 / 递归调用 / 获取函数名称的方法
- JS高级. 03 混入式继承/原型继承/经典继承、拓展内置对象、原型链、创建函数的方式、arguments、eval、静态成员、实例成员、instanceof/是否在同一个原型链
- 是否可以使用一个参数来创建一个新的对象键,并将其作为同一个函数中的变量?
- 为什么我们可以使用函数参数修改对象,但是我们不能以相同的方式重新定义对象? [重复]
- 使用C#的'using'语句和自定义对象的函数,我是否需要实现IDisposable?
- PHP 验证身份证是否合法的函数
- 用LinQ扩展方法,泛型扩展方法,实现自定义验证字符是否空、对象是否为null,及泛型约束使用,Action的使用
- C++ //拷贝构造函数调用时机//1.使用一个已经创建完毕的对象来初始化一个新对象 //2.值传递的方式给函数参数传值 //3.值方式返回局部对象
- 使用@Valid和BindingResult验证请求参数的合法性并处理校验结果
- 使用C#的'using'语句和自定义对象的函数,我是否需要实现IDisposable?