js中Function引用类型常见有用的方法和属性详解

 更新时间:2019年12月11日 08:03:00   作者:hellozxcv  
在本篇文章里小编给大家整理的是关于js中Function引用类型常见有用的方法和属性知识点,有兴趣的朋友们可以学习下。

Function类型

函数由于是Function类型的一个实例,所以函数名就是一个指向函数对象的指针,不会与某个函数死死的连接在一起,这也导致了js中没有真正的重载,但好处是,函数对象可以作为另一个函数的参数或是返回值;

访问一个函数对象的指针而不是执行函数本身不能加括号

var func = new Function("x", "y", "return x + y");// 构造函数来实例化一个Function类型, 但不推荐使用
function func(x, y){
  return x + y;
}// 函数声明 js引擎会将所有的函数声明提升到顶部
var func = function (x, y){ return x + y };// 函数表达式 变量的赋值, 变量func保存着 function(x, y){ return x + y} 这个对象

Function类型中,有两个特殊的对象:arguments和this , 前者里面有传入函数中所有的参数,还有一个callee属性,这是个指针指向拥有这个属性的Function实例;而this这个指针指向执行环境,也就是Global类型的一个实例. 在浏览器中是一个窗口.

function b(){
  console.log(arguments.callee);
}

Function类型的属性和方法

length // Funciton实例期望接收形式参数的个数
prototype // 

apply();// 非继承的方法 
// apply(Function实例运行的作用域:this, Array实例或arguments)

call();// 非继承的方法
// call(Function实例运行的作用域:this, arg1, arg2, ...)

//

bind( X );// 将Function的实例的this指向 对象 X

除此之外,Function类型中还有一个特殊的属性:caller,这是个指针,在严格模式下不能对这个属性赋值.

Function类型一个实例a调用了Function类型的另一个实例b, 那么实例b中的caller属性就会指向实例a;

function a(){
  b();
}
function b(){
  console.log(arguments.callee.caller);
}

以上就是本次介绍的全部相关知识点,感谢大家的学习和对脚本之家的支持。

相关文章

  • 微信小程序开发中var that =this的用法详解

    微信小程序开发中var that =this的用法详解

    这篇文章主要介绍了微信小程序开发中var that =this的用法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-01-01
  • v3-admin-vite 整合pont的详细过程

    v3-admin-vite 整合pont的详细过程

    这篇文章主要介绍了v3-admin-vite 整合pont的详细过程,目前后端的Admin模板使用的是v3-admin-vite,需要整合pont接口,方便前后端统一一体化开发,本文给大家介绍的非常详细,需要的朋友可以参考下
    2024-03-03
  • innerhtml用法 innertext用法 以及innerHTML与innertext的区别

    innerhtml用法 innertext用法 以及innerHTML与innertext的区别

    innerhtml用法 innertext用法 以及innerHTML与innertext的区别,看完这个大家以后在实际应用中,就可以选择合适的方法。尽可能的考虑到兼容性。
    2009-10-10
  • 微信小程序开发之IOS和Android兼容的问题

    微信小程序开发之IOS和Android兼容的问题

    这篇文章主要介绍了微信小程序开发之IOS和Android兼容的问题的相关资料,希望通过本文能帮助到大家,需要的朋友可以参考下
    2017-09-09
  • javascript动画浅析

    javascript动画浅析

    最近一直在弄手机端的游戏,接触到各种动画。加之对之前的自己那个动画类不满意,就有心想写个新的。然后翻看各种博客,查资料。也学到一些新的东西
    2012-08-08
  • JS集成fckeditor及判断内容是否为空的方法

    JS集成fckeditor及判断内容是否为空的方法

    这篇文章主要介绍了JS集成fckeditor及判断内容是否为空的方法,涉及fckeditor的设置及页面元素的操作技巧,并分析了php环境下配置文件上传的注意事项,需要的朋友可以参考下
    2016-05-05
  • javascript判断chrome浏览器的方法

    javascript判断chrome浏览器的方法

    这篇文章主要介绍了javascript判断chrome浏览器的方法,通过userAgent判断检测一下userAgent返回的字符串里面是否包含“Chrome”,需要的朋友可以参考下
    2014-03-03
  • HTML颜色选择器实现代码

    HTML颜色选择器实现代码

    HTML颜色选择器实现代码需要的朋友可以参考下。
    2010-11-11
  • js判断IE6/IE7/FF的代码[XMLHttpRequest]

    js判断IE6/IE7/FF的代码[XMLHttpRequest]

    js下通过XMLHttpRequest判断IE6/IE7/FF的代码,需要的朋友可以参考下。
    2011-02-02
  • JavaScript实现刮刮乐效果

    JavaScript实现刮刮乐效果

    这篇文章主要为大家详细介绍了JavaScript实现刮刮乐效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-11-11

最新评论