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

JS可变参数的使用:arguments

2016-05-16 09:58 721 查看
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、在调用函数时,可以直接向函数中传递多个实参
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: