js中函数学习笔记-创新互联

函数:

为金沙等地区用户提供了全套网页设计制作服务,及金沙网站建设行业解决方案。主营业务为网站设计、成都做网站、金沙网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!

  具名函数

  匿名函数

一.函数定义

  (1)函数声明

           函数声明只能出现在程序或函数体内,

         function  fun(){

              //函数体

          }

(2)函数表达式

         匿名函数表达式

          var fun = function(){

                //函数体

         }

        具名函数表达式

          var fun = function f(){

               //函数体

        }

         具名函数表达式的函数名只能在创建函数内部使用

(3)函数构造函数

         Var fun = new Function(),一般不建议使用

   二.函数调用方式:

  (1)作为函数被调用,是由于函数后面加上()操作符来触发的,用这种方式调用时,函数的上下文就是全局的上下文,即window对象

 (2)方法调用模式:一个函数是一个对象的属性,当这个函数被调用时候,这个函数就视为这个对象的一个方法。当这个函数作为一个对象的方法被调用的时候,这个对象就成为这个函数的上下文。

函数的上下文的产生,并不由函数的定义来决定,而是由函数的调用来决定。

(3)构造函数调用:想让一个函数作为构造器被调用,需要new关键字,this为创建的新对象

关于new的过程

  1)创建一个空的对象,仅包含Object的属性和方法。

  2)将prototype中的属性和方法创建一份引用,赋值给新对象

  3)将this上的属性和方法新建一份,赋值给新对象

  4)返回this对象,忽略return 语句。

(4)apply/call调用:通过使用apply和call方法,可以用任何对象作为函数上下文,并将它显性的操作

Apply(),接收两个参数,第一个参数作为函数上下文的对象,第二个参数,一个参数数组

Call(),则是另一个简单的形式,第一个参数作为函数上下文的对象,第二个参数只需要传递参数列表来代替参数数组。

三.函数的属性和方法

       Function()的属性:prototype

       Function对象实例属性:

       (1)arguments:arguments对象是一种类数组对象,它包含所有传递给函数的参数,arguments对象拥有名为callee的属性,这个属性指向的是当前执行的函数,这个属性可以一直用于在函数内部获取到函数自身。arguments对象拥有length属性,它给出的是在调用时发送给函数的参数数量。这个属性已经被js1.4中废除。

            (2)constructor

            (3)length:而这个函数实例length属性,提供的是已定义参数的数量,它可以获得函数所需要的参数总数量。
        Function对象实例方法:

            (1)apply()

            (2)call()

            (3)toString()

四.匿名函数,自调用的匿名函数表达式,自调用的匿名函数语句

五.函数可以无限地嵌套在其他函数内部

在真正定义函数语句之前,可以在执行时调用该函数语句,因为函数声明提升的作用。使用函数声明语句的话,函数名称和函数体均提前,使用函数定义表达式,js会将此代码拆分两行代码分别执行。先把变量名提升,函数的表达式仍然在原来的位置

创新互联www.cdcxhl.cn,专业提供香港、美国云服务器,动态BGP最优骨干路由自动选择,持续稳定高效的网络助力业务部署。公司持有工信部办法的idc、isp许可证, 机房独有T级流量清洗系统配攻击溯源,准确进行流量调度,确保服务器高可用性。佳节活动现已开启,新人活动云服务器买多久送多久。


当前名称:js中函数学习笔记-创新互联
标题网址:http://ybzwz.com/article/pihoi.html