• Function_basic


    1.没有重载

      在JS中,函数名相当于一个指针,指向函数对象的地址,当声明两个同名函数时,后声明的函数会覆盖先声明的函数。

    2.函数的内部属性

      1.arguments对象

        类数组对象,包含传入函数的所有参数。

        callee:是一个指针,指向拥有这个arguments对象的函数。

        

    <!--经典的递归函数(低耦合)-->
    function factorial(num){
        if(num<=1)
         {
             return 1;
         }
        else{
            return num*arguments.callee(num-1);
        }      
    }   

      2.this

      指向调用当前函数的对象

      3.caller  

      保存调用当前函数的函数的引用,如果在全局作用域内调用此函数,会返回null

    3.函数的方法  (apply/call-设置函数内this对象的值)

      应用某个对象的一个方法,使用另一个对象替换当前对象

      apply(thisObj [, argArray])  /  call(thisObj [,arg1[,arg2...] ])

        如果argArray不是一个有效数组或者不是argument对象,会报TypeError错误

        如果没有指定thisObj,就会将Global对象当成thisObj

    window.color="red";
    var o={color="blue"};
    function sayColor(){
        alert(this.color);
    }
    sayColor();        //red
    sayColor.call(this);    //red
    sayColor.call(o);        //blue    
  • 相关阅读:
    iOS 代码让手机震动一下
    iOS开发 --制作圆形的头像(UIImage)
    JAVA基本数据类型和引用数据类型的区别
    jquery基础
    JS基础
    JAVA异常详解
    单例模式详解及java常用类
    JAVA基础之字符串和面向对象
    我的第一篇博客 初识动画,飞机行小动画
    GCD系列:调度组(dispatch_group)
  • 原文地址:https://www.cnblogs.com/controlms/p/7728977.html
Copyright © 2020-2023  润新知