zoukankan      html  css  js  c++  java
  • Javascript学习之Function对象详解

      JavaScript中的Function对象,就是我们常说的函数对象。在JS中,所有的函数也是以对象的形式存在的。

      语法

      充当Function对象的构造函数使用,用于结合new关键字构造一个新的Function对象。

      new Function( [ argName1 [, argName1 [, argNameN... [, funcBody ]]]] )

      当作普通函数使用,其行为与用法一(使用new关键字)完全一致,相当于用法一省略了new关键字。

      Function( [ argName1 [, argName1 [, argNameN... [, funcBody ]]]] )

      返回值

      Function()的返回值是Function类型,返回一个函数对象

      注意

      多数时候,你无需显示地通过new关键字来构造一个Function对象,因为在JavaScript中,你可以直接以function关键字形式声明函数

      JavaScript在调用Function()构造函数时编译由该构造函数创建的对象。虽然它使您的脚本在运行时重新定义函数的情况下具有更大的灵活性,但它也会减慢代码的执行速度。为了避免减慢脚本速度,应尽可能少地使用Function()构造函数。建议优先考虑以function关键字的形式声明函数。

      Function()会把传入的最后一个参数作为函数定义的执行代码,之前的所有参数均依次作为函数定义的参数。

      如果没有指定任何参数,则表示该函数没有定义参数列表,函数的执行代码也为空

      如果只指定了一个参数,则该参数将被视作函数的执行代码。如果你想定义一个参数、执行代码为空,请传入两个参数,第二个参数为空字符串即可:new Function("argName1", "")

      属性

      argumentS

      返回该函数执行时内置的argumentS对象。

      caller

      返回调用当前函数的函数。

      conStructor

      返回创建该对象的构造函数。

      length

      返回函数定义的参数个数。

      方法

      call()

      调用当前Function对象,可同时改变函数内的thiS指针引用,函数参数一个个分别传入。

      apply()

      调用当前Function对象,可同时改变函数内的thiS指针引用,函数参数以数组或argumentS对象的形式传入。

      toString()

      返回定义该Function对象的字符串。

      valueOf()

      返回Function对象本身。

    原文链接:http://www.maiziedu.com/wiki/js/function1/

  • 相关阅读:
    用vuex写了一个购物车H5页面的示例代码
    css如何引入外部字体?
    移动开发中更好的图片自适应
    常见样式问题七、word-break、word-wrap、white-space区别
    你真的了解word-wrap和word-break的区别吗?
    css中word-break、word-wrap和white-space的区别
    另辟蹊径:vue单页面,多路由,前进刷新,后退不刷新
    应该用forEach改变数组的值吗? 原生JS forEach()和map()遍历的异同点
    Vue 全家桶介绍
    Spring MVC配置MyBatis输出SQL
  • 原文地址:https://www.cnblogs.com/space007/p/7495295.html
Copyright © 2011-2022 走看看