函数声明的3种方式:

1. Function 对象








没有重载:


函数声明与函数表达式:



作为值的函数:



函数内部属性:

/** 演示函数的callee属性.* 说明:arguments.callee:初始值就是正被执行的 Function 对象,用于匿名函数*/







函数属性和方法:





<script language="JavaScript">
/** 演示arguments的用法,如何获取实参数和形数数*/
function argTest(a,b,c,d){var numargs = arguments.length;     // 获取被传递参数的数值。var expargs = argTest.length;       // 获取期望参数的数值。alert("实参数目为:"+numargs)alert("形数数目为:"+expargs)alert(arguments[0])         alert(argTest[0])          //undefined 没有这种用法
}
//argTest(1,2)
//argTest(1,2,3,4,5)/**  arguments不是数组(Array类)*/Array.prototype.selfvalue = 1;
function testAguments(){alert("arguments.selfvalue="+arguments.selfvalue);
}
//alert("Array.sefvalue="+new Array().selfvalue);
//testAguments();/** 演示函数的caller属性.* 说明:(当前函数).caller:返回一个对函数的引用,该函数调用了当前函数*/function callerDemo() {if (callerDemo.caller) {var a= callerDemo.caller.arguments[0];alert(a);} else {alert("this is a top function");}
}
function handleCaller() {callerDemo();
}//callerDemo();
//handleCaller("参数1","参数2");/** 演示函数的callee属性.* 说明:arguments.callee:初始值就是正被执行的 Function 对象,用于匿名函数*/
function calleeDemo() {alert(arguments.callee);
}
//calleeDemo();
//(function(arg0,arg1){alert("形数数目为:"+arguments.callee.length)})();/** 演示apply,call函数的用法* 说明:作用都是将函数绑定到另外一个对象上去运行,两者仅在定义参数方式有所区别:*       apply(thisArg,argArray);*     call(thisArg[,arg1,arg2…] ]);*     即所有函数内部的this指针都会被赋值为thisArg*/function ObjectA(){alert("执行ObjectA()");alert(arguments[0]);this.hit=function(msg){alert(msg)}this.info="我来自ObjectA"}function ObjectB(){alert("执行ObjectB()");//调用ObjectA()方法,同时ObjectA构造函数中的所有this就会被ObjectB中的this替代ObjectA.apply(this,arguments);//ObjectA.call(this);alert(this.info);}//ObjectB('参数0');var value="global 变量";function Obj(){this.value="对象!";}function Fun1(){alert(this.value);}//Fun1();//Fun1.apply(window); //Fun1.apply(new Obj());
</script>

基本包装类型:



Boolean 类型


Number 类型



String 类型










21. Function 对象相关推荐

  1. 《JavaScript启示录》——1.21 JavaScript对象和Object()对象

    本节书摘来自异步社区<JavaScript启示录>一书中的第1章,第1.21节,作者:[美]Cody Lindley著,更多章节内容可以访问云栖社区"异步社区"公众号查 ...

  2. Javascript 中的 Function对象

    在 js 中 函数 Function(大写) 就是一个对象.在 javascript 中没有函数 reload (重载)的概念. 我们看下面这个,结果应该是什么呢? <html><h ...

  3. 使用 Boost.Lambda 库创建并存储在 Boost.Function 对象中的函子中使用 Boost.Units 的数量、单位和绝对类型

    使用 Boost.Lambda 库创建并存储在 Boost.Function 对象中的函子中使用 Boost.Units 的数量.单位和绝对类型 实现功能 C++实现代码 实现功能 使用 Boost. ...

  4. JavaScript高级篇之Function对象

    JavaScript高级篇之Function对象 一: Function对象引入: Function对象是js的方法对象,可以用Function实例化出任何js方法对象. 例如: 1 <%@ p ...

  5. boost function对象

    本文根据boost的教程整理. 主要介绍boost function对象的用法. boost function boost function是什么 boost function是一组类和模板组合,用于 ...

  6. javascript中encodeURL对象、Boolean对象、Function对象、globalThis对象、Infinity对象、isFinite对象、isNaN对象、JSON对象

    encodeURI()对象: 用于对特殊字符进行编码,decodeURI()对象:将特殊字符进行解码,常用于URL地址编码中 <script>var url = 'https://mozi ...

  7. 【JavaScript框架封装】使用Prototype给Array,String,Function对象的方法扩充

    版权声明:本文为博主原创文章,未经博主允许不得转载.更多学习资料请访问我爱科技论坛:www.52tech.tech https://blog.csdn.net/m0_37981569/article/ ...

  8. Build Your Own Angularjs 读书笔记(AngularJS牛逼的地方在于它内嵌了一个表达式到Function对象的编译器。。。当然还有DI框架)

    Build Your Own Angularjs 读书笔记 目录 [隐藏] 1 项目配置 2 作用域 3 表达式与过滤器 4 模块与依赖注入 5 辅助函数 6 指令 项目配置[编辑] npm pack ...

  9. js Function对象扩展与延时执行函数实例代码

    网页特效 function对象扩展与延时执行函数实例代码 function.prototype.delay=function(this1,timeout){ this1=this1||null; ti ...

  10. C++函数指针、函数对象与C++11 function对象对比分析

    1.函数指针 函数指针:是指向函数的指针变量,在C编译时,每一个函数都有一个入口地址,那么这个指向这个函数的函数指针便指向这个地址.函数指针主要由以下两方面的用途:调用函数和用作函数参数. 函数指针的 ...

最新文章

  1. mysql status改变_mysql 配置详解mysql SHOW STATUS 详解
  2. matlab导入txt数据_如何正确的将txt文本数据导入到Word中使用?
  3. python推荐入门书籍-学python入门看什么书
  4. 使用Docker-容器命令介绍
  5. app端微信支付(二) - 生成预付单
  6. SAP CRM Service Order search Tool
  7. SpringBoot2.1.9 分布式锁ShedLock
  8. 学习linux问题,小白学习linux遇到的问题汇总
  9. 敏捷开发系列学习总结(11)——Scrum敏捷开发流程的三个角色、四个会议和三个物件
  10. Go语言中命令行参数的实现
  11. linux内核源码阅读之facebook硬盘加速flashcache之二
  12. SD卡、SDHC卡和SDXC卡的功能及区别
  13. Routeros花生壳域名解析脚本
  14. VB计算汉字笔画数代码
  15. 5+App和uni-app在App开发上有何区别?
  16. 全志A33移植openharmony3.1标准系统之添加产品编译
  17. 电子类专业的毕业后就业方向
  18. 2017计算机二c语言题库,2017计算机二c语言题库试题及答案
  19. 【Flutter- 渲染机制-渲染模型】
  20. MLOps极致细节:17. Azure ML Pipeline(机器学习管道),模型训练,打包和注册

热门文章

  1. 初识IOS,Label控件的应用。
  2. Sql Server 删除所有表
  3. Word 参考文献的自动修改
  4. Pandas模块,我觉得掌握这些就够用了!
  5. 数据之路 - Python爬虫 - 正则表达式
  6. fatal error LNK1169: 找到一个或多个多重定义的符号 解决方案
  7. es6(var,let,const,set,map,Array.from())
  8. 关于index 索引
  9. 高级软件测试11.27日小组工作-1701班第5组
  10. 游戏制作大致流程粗谈之五