JS可变参数的使用:arguments

arguments简介:

1、在JavaScript中,arguments对象是比较特别的一个对象,实际上是当前函数的一个内置属性。arguments非常类似Array,但实际上又不是一个Array实例

2、arguments对象的长度是由实参个数而不是形参个数决定的。形参是函数内部重新开辟内存空间存储的变量,但是其与arguments对象内存空间并不重叠。对于arguments和值都存在的情况下,两者值是同步的,但是针对其中一个无值的情况下,对于此无值的情形值不会得以同步

代码示例

/**
 * 模拟实现数字输入功能
 * @param editor 当前获取的编辑器
 */
function numberInput(){
	var editors = arguments;
	for(var i=0;i < editors.length;i++){
		editors[i].target.bind('keydown',function(e){
			if(!(e.keyCode == 8 || (e.keyCode >= 37 && e.keyCode <= 40) || e.keyCode == 46
					|| (e.keyCode >= 49 && e.keyCode <= 57) || (e.keyCode >= 96 && e.keyCode <= 103))){
				return false;
			}
		});
	}
}

	var editorQuantity = $("#invoiceDetailDatagrid").datagrid('getEditor',{index : lastEditRowIndex,field : 'quantity'});
	var editorUnitPrice = $("#invoiceDetailDatagrid").datagrid('getEditor',{index : lastEditRowIndex,field : 'unitPrice'});
	//模拟数字输入框
	numberInput(editorQuantity,editorUnitPrice);

总结:

1、从函数定义上可以看出,函数中如果使用可变参数 arguments ,则不需要写形参

2、在调用函数时,可以直接向函数中传递多个实参

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值