引用类型 ( 对象定义 )——Function 类型
本文地址:http://www.cnblogs.com/veinyin/p/7607798.html
函数实际上是对象,也具有属性和方法,函数名实际上是指向函数对象的指针
function sum(num1,num2){
return num1 + num2;
}
不用圆括号时为访问函数指针,而不是函数调用,如下例,将 anotherSum 也指向 sum 所指向的函数
var anotherSum = sum;
此时若将 sum 赋值为 null, anotherSum 仍能继续访问该函数
Function 没有重载
由于函数其实是指针,若存在两个相同的函数名,则后一个会将先前的函数覆盖掉
函数声明与函数表达式
函数声明: 解析器会率先读取函数声明,并使其在执行任何代码之前可以访问
function sum(num1,num2){
return num1 + num2;
}函数表达式: 在解析器执行到它所在的代码行,才会真正被解释执行
var sum = function(num1,num2{
return num1 + num2;
}
作为值的函数
function callFunc(func,value1,value2){
return func(value1,value2);
} function sum(num1,num2){
return num1 + num2;
} var result = callFunc(sum,10,20); alert(result);函数内部属性
arguments(实参个数)
arguments 包含传入函数中的所有参数,同时还包含有一个 callee 属性,指向拥有这个 arguments 对象的函数
this
this 引用的是函数据以执行的环境对象
函数属性和方法
每个函数均有以下两个属性
length
表示函数希望接收的参数个数(形参个数)
var num = func.length;
prototype
所有实例方法都保存在该属性下
每个函数均有以下两个方法,可用来改变 this 指向
apply()
apply() 方法接收两个参数:函数运行作用域、参数数组,数组可以为 arguments 对象,也可以为 Array 实例
apply(func,[value1,value2,value3]);
call()
作用于 apply() 函数相同,仅接收参数不同,参数为函数运行作用域、参数,其中参数必须全部列出
call(func,value1,value2,value3);
引用类型 ( 对象定义 )——Function 类型的更多相关文章
- 引用类型 ( 对象定义 )——Array 类型
本文地址:http://www.cnblogs.com/veinyin/p/7607293.html 一个数组中可以存储不同类型的值,可以混合存储数字.字符串.对象等 1 创建数组 1.1 构造函数 ...
- 引用类型 ( 对象定义 )——Object 类型
本文地址:http://www.cnblogs.com/veinyin/p/7607100.html 创建实例 new 操作符后跟构造函数 var people = new Object(); pe ...
- 引用类型 ( 对象定义 )——Date 类型
本文地址:http://www.cnblogs.com/veinyin/p/7607743.html 1 创建日期对象 var date = new Date(); 2 可以给日期对象传值 2.1 ...
- 引用类型 ( 对象定义 )——RegExp 类型
var expression = /pattern/flags; 以上为创建正则表达式格式,斜线包围的为正则表达式,flags 有三个值可以选择 本文地址:http://www.cnblogs.com ...
- 引用类型(三):Function类型
一. Function类型函数实际上是对象.每个函数都是Function类型都实例,而且都与其他引用类型一样具有属性和方法.由于函数是对象,因此函数名实际上也是一个指向函数对象都指针.1.函数通常是使 ...
- 引用类型-Function类型
Function类型 定义函数的三种方式: 1.函数声明 function sum(num1,num2){ return num1 +num2; } 2.函数表达式 var sum = functio ...
- JavaScript笔记——引用类型之Object类型和Function类型
<JavaScript高级程序设计>中介绍的几种JavaScript的引用类型,本文只记了Object跟Function类型 Object类型 创建对象 var person = new ...
- 引用类型之Function类型
Function类型 ECMAScript中最有意思的就是函数了,有意思的根源,在于函数实际上是对象.每个函数都是Function的实例,具有属性和方法.而重要的一点是,函数名,不过是指向函数的指针, ...
- JavaScript--我发现,原来你是这样的JS(再说引用类型,基本包装类型与个体内置对象)
一.介绍 本篇是续上一篇的,引用类型的后篇,本篇主要是说基本包装类型和个体内置对象.如果你能收获一些知识,那我很高兴,很满足,哈哈哈,希望大家能愉快看完.如果你想学好一门技术,要不忘初心,方得始终. ...
随机推荐
- 转 使用Docker部署 spring-boot maven应用
转自:https://blog.csdn.net/u011699931/article/details/70226504/ 使用Docker部署 spring-boot maven应用 部署过程分为以 ...
- 使用docker国内镜像解决方案
1:蜂巢镜像 https://c.163yun.com/hub#/m/library/ 例如: docker pull hub.c.163.com/library/nginx:1.8 再次执行dock ...
- sphinx配置 + php
1. 为什么要使用Sphinx 假设你现在运营着一个论坛,论坛数据已经超过100W,很多用户都反映论坛搜索的速度非常慢,那么这时你就可以考虑使用Sphinx了(当然其他的全文检索程序或方法也 ...
- TP中CURD操作
CURD操作 CURD操作也就是模型操作数据表的基本操作.C(Create).U(Update).R(Read).D(Delete)操作就是增删改查操作. 6.1.增加操作 回想一下在mysql中增加 ...
- SQL中的逻辑运算符
逻辑运算符和比较运算符一样,都是返回 true 或 false 值得布尔数据类型. 运算符 行为 ALL 如果一个比较集中全部都是 true ,则值为 true AND 如果两个布尔值表达式均为 ...
- XML 增加属性
var resultDoc = new XmlDocument(); resultDoc.LoadXml("<root></root>"); resultD ...
- 连接Mysql数据库
JDBC连接数据库 创建一个以JDBC连接数据库的程序,包含7个步骤: 1.加载JDBC驱动程序: 在连接数据库之前,首先要加载想要连接的数据库的驱动到JVM(Java虚拟机), 这通过java.la ...
- 【CF438E】The Child and Binary Tree(多项式运算,生成函数)
[CF438E]The Child and Binary Tree(多项式运算,生成函数) 题面 有一个大小为\(n\)的集合\(S\) 问所有点权都在集合中,并且点权之和分别为\([0,m]\)的二 ...
- 洛谷 P2664 树上游戏 解题报告
P2664 树上游戏 题目描述 \(\text{lrb}\)有一棵树,树的每个节点有个颜色.给一个长度为\(n\)的颜色序列,定义\(s(i,j)\) 为 \(i\) 到 \(j\) 的颜色数量.以及 ...
- mac os 启动服务命令 launchctl
参考苹果开发者网址 https://developer.apple.com/library/mac/documentation/MacOSX/Conceptual/BPSystemStartup/Ch ...