arguments 订阅
Arguments是个类似数组但不是数组的对象,说他类似数组是因为其具备数组相同的访问性质及方式,能够由arguments[n]来访问对应的单个参数的值,并拥有数组长度属性length。还有就是arguments对象存储的是实际 传递给函数的参数,而不局限于函数声明所定义的参数列表,而且不能显式创建 arguments 对象。 展开全文
Arguments是个类似数组但不是数组的对象,说他类似数组是因为其具备数组相同的访问性质及方式,能够由arguments[n]来访问对应的单个参数的值,并拥有数组长度属性length。还有就是arguments对象存储的是实际 传递给函数的参数,而不局限于函数声明所定义的参数列表,而且不能显式创建 arguments 对象。
信息
属    于
编程
类    别
计算机学
性    质
科学
外文名
arguments
argumentsarguments
在JavaScript中,arguments是对象的一个特殊属性。arguments对象就像数组,但是它却不是数组。argument 对象包含了函数调用的参数数组,通过这种方式你可以很方便的找到最后一个参数的值。 [1]  1:arguments是收到的实参副本  在词法分析中, 首先按形参形成AO的属性,值为undefined  当实参传来时, 再修改AO的相应属性.  2:并把所有收到实参收集起来,放到一个arguments对象里  t(a,b,c){},  调用时: t(1,2,3,4,5) 5个参数  此时 , AO属性只有a,b,c,3个属性, arguments里有1,2,3,4,5, 所有的值length, 获取arguments对象的长度。callee, 引用当前正在执行的函数。
收起全文
精华内容
下载资源
问答
  • arguments

    2020-11-11 12:25:12
    arguments 参数列表: arguments 参数列表 function fn(){ console.log(arguments);//这个关键词只能出现在函数中 console.log(arguments[0],arguments[1],arguments[2],arguments[3]); // 分别对应传入参数 } ...
       arguments 参数列表:
        arguments 参数列表
    
    function fn(){
        console.log(arguments);//这个关键词只能出现在函数中
        console.log(arguments[0],arguments[1],arguments[2],arguments[3]);
        // 分别对应传入参数
    }
    
    fn(1,2,3,4);
    

    特征一:
    非固定参数

    function getSum(){
        var sum=0;
        for(var i=0;i<arguments.length;i++){
            sum+=Number(arguments[i]);
        }
        console.log(sum);
    }
    
    getSum(1,2);
    

    特征二:arguments.callee 应用于匿名函数的调用,打印当前函数。

    function getSum(){
        // arguments.callee当前函数
        console.log(arguments.callee);
    }
    getSum();//
    
    
        arguments.callee 应用于匿名函数的调用,打印当前函数。
    document.addEventListener("click",function(){//增加侦听事件
        console.log("aaa");
        document.removeEventListener("click",arguments.callee);//删除侦听事件
    })
    
        //让匿名函数再次执行
    
    var i=0;
    ~function(){
        i++;
        if(i<3) arguments.callee();
    }();
    console.log(i);
    
        自执行函数
    
    function getSum(){
        // console.log(arguments.callee.arguments);//就是arguments
        console.log(arguments.callee.caller);//调用当前函数的上下文函数getValue
    }
    
    function getValue(){
        getSum(1,2,3,4);
    }
    
    getValue();
    

    this的转变:

      function getValue(fn){
            // fn();
            arguments[0]();
        }
    
        function getSum(){
            console.log(this);//window,直接执行时候
            // 如果使用arguments回调当前函数,this会转变为回调当前函数上下文函数中arguments
        }
    
        getValue(getSum);
    
    展开全文
  • TypeError: not all arguments converted during string formatting 举例 例如: &amp;gt;&amp;gt;&amp;gt; strs=(1,2,3,4) #创建一个集合 &amp;gt;&amp;gt;&amp;gt; ...

    前言

    在学习python中难免犯下一些幼稚的错误,为了方便后来人的学习与自己的进步,整理了在学习过程中犯下的错误,写下此篇文档。

    目录

    问题

    TypeError: not all arguments converted during string formatting

    举例

    例如:

     strs=(1,2,3,4)  #创建一个集合
     strs
     (1, 2, 3,4)
     >>> print 'strs= %s ' % strs
     Traceback (most recent call last):
       File "<pyshell#43>", line 1, in <module>
         print 'strs= %s ' % str
     TypeError: not all arguments converted during string formatting
    

    原因:1 % 操作符只能直接用于字符串(‘123’),列表([1,2,3])、元组,因此需要一一匹配操作符。

    解决方法

     print 'strs= %s' % (strs,)
    strs= (1, 2, 3,4)
    也可以用:
    print 'strs= %s,%s,%s,%s' % sstr
    strs= 1,2,3,4 
    

    #简单解释
    说明前后%和后面的参数数量不对应,比如

    File "<pyshell#37>", line 1, in <module>
    print '%f meters is the same as &f km' % (meters, kilometers)
    TypeError: not all arguments converted during string formatting
    

    后面有miles和kilometer两个参数,前面只有一个%f,还有一个打印错的&, 前后不一致; 如果改成

    print '%f miles is the same as %f km' % (miles, kilometers)
    

    就可以了

    补充

    如果还有不会的,可以关注下面的公众号,博主会在24小时内回复。
    在这里插入图片描述

    展开全文
  • Python运行时出现: takes no arguments错误提示

    万次阅读 多人点赞 2019-09-23 21:01:43
    Python运行时出现:TypeError: Box1() takes no arguments 可能有以下两个容易犯的错误: 1.init写成了int 2.__inint__这个地方前后是两个"_" 出现这个的原因很大可能是你的代码缩进出了问题。 ...

    Python运行时出现:TypeError: Box1() takes no arguments
    在这里插入图片描述
    可能有以下两个容易犯的错误:
    1.init写成了int
    2.__init__这个地方前后是两个"_"
    init()有个专业的名称叫做:构造方法,其不对实例方法显示。

    在这里插入图片描述
    出现这个的原因很大可能是你的代码缩进出了问题。

    展开全文
  • argumentsarguments.callee

    2017-08-20 10:03:49
    argumentsarguments.callee的区别

    arguments和arguments.callee

    <script type="text/javascript">
        function fun(m,o,p,q,r) {
            alert(this.length);
        }
        function f(a,b) {
            arguments[0](9,10,11,12,13);
        }
        f(fun,5,6,7);
    </script>
    这段js最终显示的结果为4。这里的this取不到函数本身,只能取到f(fun,5,6,7)函数内部的变量数量4个。

    function  fun() {
        console.log(arguments.callee.length);
    }
    fun(88,66,44);

    这就说明调用的是函数自身但是fun()形参为空,所以结果显示为0;
    function  fun(a,b,c,d,e) {
        console.log(arguments.callee.length);
    }
    fun(88,66,44);

    结果为5,说明arguments.callee.length调用的fun函数本身形参的个数即a,b,c,d,e而不是外部的fun函数;

    function  fun(a,b,c,d,e) {
        console.log(arguments.callee.length);
        console.log(arguments.length);
    }
    fun(88,66,44);

    arguement.callee.length调用的是函数的形参个数结果显示为5,而arguements.length调用的是函数的实参个数结果显示为3;

    function fun(m,n,o,p,q,r) {
        alert(this.callee.length);
    }
    function f(a,b) {
        arguments[0](9,10,11,12,13);
    }
    f(fun,5,6,7);


    此时this指的是f函数中的arguements对象中的形参个数(a,b)数量相当于arguements.callee.length。所以this.callee.length的个数为2;
    this调用取决于调用对象,而不是所在的函数,这里f();函数被调用了所以this指代的f();中的内容而不是fun()函数的内容。
    展开全文
  • js中arguments理解

    万次阅读 多人点赞 2017-04-16 11:23:31
    arguments
  • js的arguments到底是什么?

    万次阅读 多人点赞 2016-11-19 16:38:14
    类数组对象:arguments 总所周知,js是一门相当灵活的语言。当我们在js中在调用一个函数的时候,我们经常会给这个函数传递一些参数,js把传入到这个函数的全部参数存储在一个叫做arguments的东西里面,那么这到底是...
  • arguments对象

    2019-10-28 18:09:53
    arguments.callee 指向当前执行的函数。 arguments.caller 指向调用当前函数的函数。 arguments.length 指向传递给当前函数的参数数量。 arguments[@@iterator] 返回一个新的Array迭代器对象,该对象包含参数中每个...
  • JS arguments

    2019-04-02 20:24:34
    arguments:读取函数运行时的所有参数 通过类似于数组访问下标的方式 console.log(arguments[0],'<--->',arguments[1]); arguments.length:获取函数运行时参数的数量 arguments可以修改该参数的值 arguments...
  • js arguments

    2019-05-17 15:08:27
    arguments对象是所有(非箭头)函数中都可用的局部变量 arguments对象不是一个Array。它类似于Array,但除了length属性和索引元素之外没有任何Array属性。 参数扩展 var args = Array.from(arguments); 属性: ...
  • Javascript arguments

    2019-02-22 14:05:28
    今天我们来看看arguments对象及属性。arguments对象不能显式创建,arguments对象只有函数开始时才可用。函数的arguments对象并不是一个数组,访问单个参数的方式与访问数组元素的方式相同。索引n实际上是arguments...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 100,131
精华内容 40,052
热门标签
关键字:

arguments