码迷,mamicode.com
首页 > Web开发 > 详细

JS函数的参数对象arguments在严格模式下的限制

时间:2015-04-20 14:49:23      阅读:363      评论:0      收藏:0      [点我收藏+]

标签:

在JS中,传入的函数的参数个数可以与定义函数的个数不一致,那么对于传入的实参的引用,则是arguments对象。然而改对象在严格模式和非严格模式下是由区分的:

 

1 在严格模式下arguments作为了一个保留字,那么如果在定义arguments相关的变量和函数,则会报语法错误。

2 arguments在严格模式下属于传入的实参对象,并且是不可变的,即不可在函数内部通过arguments来修改实参值。

如:

function test1(a){

    “use strict”;

     arguments[0]=34;

    console.log(a);

}

 

test1(23),则函数的输出结果为23.

 

 

 

3 禁止使用arguments.callee,caller,在函数内部不能通过这种方式获取自己的引用了

JS函数的参数对象arguments在严格模式下的限制

标签:

原文地址:http://www.cnblogs.com/freshcoder/p/4441452.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!