关于arguments 和 repla
来源:互联网 发布:域名注册阿里云 编辑:程序博客网 时间:2024/05/21 19:25
arguments不是数组,如果用typeof arguments,返回的是object,数组的大多数操作都可以使用,
但数组的pop和push对象不适应
arguments对象不是一个真正的javascript数组,但是我们还是可以轻易的把它转换成标准的数据 ,然后进行数组操作。
var args = Array.prototype.slice.call(arguments);
arguments对象的长度是由实参个数而不是形参个数决定的。形参是函数内部重新开辟内存空间存储的变量,但是其与arguments对象内存空间并不重叠。对于arguments和值都存在的情况下,两者值是同步的,但是针对其中一个无值的情况下,对于此无值的情形值不会得以同步。
function f(a, b, c){ alert(arguments.length); // result: "2" a = 100; alert(arguments[0]); // result: "100" arguments[0] = "qqyumidi"; alert(a); // result: "qqyumidi" alert(c); // result: "undefined" c = 2012; alert(arguments[2]); // result: "undefined"}f(1, 2);
arguments对象中有一个非常有用的属性:callee。arguments.callee返回此arguments对象所在的当前函数引用。在使用函数递归调用时推荐使用arguments.callee代替函数名本身。
<script> function format(string){ var args=arguments; var pattern=new RegExp("%([0-"+arguments.length+"])","g"); return String(string).replace(pattern,function(matc,index,ss){ console.log(ss); //8,30,37 return args[index]; }); }; console.log(format("And the %1 want to know whose %2 you %3","papers","shirt","wear"));</script>js字符串方法replace()的第二个参数为函数讲解
ECMAScript规定,replace()方法的参数replacement可以是函数而不是字符串。在这种情况下,每个匹配都调用该函数,它返回的字符串将替换文本使用。第一个参数表示匹配到的字符,第二个参数表示匹配到的字符最小索引位置(RegExp.index),第三个参数表示被匹配的字符串的的位置(自一开始计数)。
0 0
- 关于arguments 和 repla
- 关于arguments
- arguments和arguments.callee
- 关于arguments和形参互相影响的问题
- js关于arguments和参数名称重复的问题
- 关于Command-line Arguments
- 关于arguments对象
- 关于js中的arguments
- 关于arguments的使用
- python positional arguments 和 keyword arguments
- this和arguments
- arguments.callee 和 caller
- arguments,callee和caller
- 关于VS2010 的command arguments
- 关于[].slice.call(arguments,1)
- 关于arguments.callee.calle…
- Arguments
- arguments
- debian “更换介质:请把标有…… DVD 的盘片插入驱动器“/media/cdrom/”再按回车键“ 解决方法
- curl学习(三):使用POST的处理方法
- C/C++ 程序代码覆盖率统计工具Gcov
- IOS Http请求
- zookeeper+kafka安装以及kafka+spark streaming 的简单整合
- 关于arguments 和 repla
- 基于IOS平台的游戏之小拼图
- Android C程序打印logcat日志
- 公有、私有、保护总结
- CSAPP LAB---buflab-handout(缓冲区溢出实验)
- 获取自定义标题栏组件要设置setContentView
- 【Echarts】——上手Demo
- Struts1.3不支持data-sources数据源配置
- 关于Ubuntu14.04的nfs的使用