[k]js-Function类型

函数也是对象。每个函数都是 Function 类型的实例,而且都与其他引用类型一样具有属性和方法。
由于函数是对象,因此函数名实际上也是一个指向函数对象的指针,不会与某个函数绑定。

1 function sum (num1, num2) {
2     return num1 + num2;
3 }

这与下面使用函数表达式定义函数的方式几乎相差无几。

1 var sum = function(num1, num2){
2     return num1 + num2;
3 };

以上代码定义了变量 sum 并将其初始化为一个函数。有读者可能会注意到, function 关键字后面没有函数名。

这是因为在使用函数表达式定义函数时, 没有必要使用函数名,通过变量 sum 即可以引用函数。
另外,还要注意函数末尾有一个分号,就像声明其他变量时一样。

函数是对象,函数名是指针
由于函数名仅仅是指向函数的指针,因此函数名与包含对象指针的其他变量没有什么不同。
注意,使用不带圆括号的函数名是访问函数指针,而非调用函数。

时间: 2024-08-03 17:23:07

[k]js-Function类型的相关文章

【笔记】js Function类型 内部方法callee

运用function实现阶乘 以往的做法是如下的 function factorial(num){ if(num <= 1){ return 1; }else{ return num * factorial(num - 1); } } 但是如果一旦函数名改变 函数内部的递归调用行数也要进行改变 重用性很不好所以可以使用function 内部的callee()方法,此方法是function 类型内部的一个属性,它是一个指针指向函数参数对象的函数,即callee所在函数的本身 所以以后的阶乘可以这样

【js实例】Array类型的9个数组方法,Date类型的41个日期方法,Function类型

前文提要:[js实例]js中的5种基本数据类型和9种操作符 Array类型的9个数组方法 Array中有9个数组方法: 1.检测数组 2.转换方法 3.栈方法 4.队列方法 5.冲排序方法6.操作方法 7.位置方法 8.迭代方法 9.归并方法 在实例中介绍,实例如下 /* Array类型 js数组中的每一项可以用来保存任何类型的数据:js数组的大小是可以动态调整的 */ var colors = ["red", "blue", "green"];

Function类型(JS高程3)—— JS学习笔记2015-6-29(第70天)

Function 类型 函数是对象 具有属性和方法,函数名实际上是一个指向函数对象的指针 没有重载: 函数声明和函数表达式 函数声明: function sum (num1, num2){ return num1 + num2; } 函数表达式: var sum = function(num1, num2){ return num1 + num2; };       //  这里是有分号的 二者基本上没有太大的区别,值得注意的是,函数表达式后面是有分号的: 还有一点就是,函数声明之前是可以调用函

转载自chaos_JS 的JavaScript中的Function类型浅析

1. Function类型是js中引用类型之一,每个函数实际上都是Function类型的实例对象,具有自己的属性和方法.正因为函数式对象,所以函数名实际上也是一个指向函数对象的指针. 2. 常用的函数定义方式 1. 函数声明: function sum(a , b ){ return a+b; } 2. 表达式: var sum = function(){ return a+b; }; //注意分号 //两种方式的区别: //解释器会率先读取函数声明,并使其在执行之前可以访问,而使用表达式则必须

9.Function类型

Function类型 学习要点:1.函数的声明方式2.作为值的函数3.函数的内部属性4.函数属性和方法 在ECMAScript中,Function(函数)类型实际上是对象,每个函数都是Function类型的实例,而且都与其他引用类型一样具有属性和方法.由于函数时对象,因此函数名实际上也是一个指向函数对象的指针. 一.函数的声明方式 1.普通的函数声明function box(num1 , num2){ return num1 + num2;}; 2. 使用变量初始化函数var box = fun

JS function的参数问题

1.当传入的参数个数小于声明的参数个数时,缺少的参数值就是:undefined 类似方法重载 var f1 = function(p1,p2,p3){    switch(arguments.length){        case 0:            alert("无参版本的f1")            break;        case 1:            alert("1个参数版本的f1:" + p1)            break; 

JavaScript中的Function类型浅析

1. Function类型是js中引用类型之一,每个函数实际上都是Function类型的实例对象,具有自己的属性和方法.正因为函数式对象,所以函数名实际上也是一个指向函数对象的指针. 2. 常用的函数定义方式 1. 函数声明: function sum(a , b ){ return a+b; } 2. 表达式: var sum = function(){ return a+b; }; //注意分号 //两种方式的区别: //解释器会率先读取函数声明,并使其在执行之前可以访问,而使用表达式则必须

为JS字符类型添加trim方法

JS字符串本身并不没有提供常用的trim方法,我们可以通过修改String原形来添加此方法,我们就可以直接调用此方法了: String.prototype.trim = function(){return this.replace(/(^\s*)|(\s*$)/g, '')} String.prototype.leftTrim = function(){return this.replace(/(^\s*)/g, '')} String.prototype.rigthTrim = functio

JS对象类型的确定

JS是松散类型的语言,这一点JS的对象表现得尤为突出.那么如何来确定JS对象的具体类型呢? 首先,我们可以使用typeof运算符确定其基本类型(number,object,function,undefined).如果typeof运算符返回object我们再使用instanceof来确定该对象是否属于某个具体类型. 注意:typeof null得到object,而typeof undefined得到undefined,typeof 数组对象得到object,typeof 函数得到function.

转:js不同类型对象的比较规则

Type(x) Type(y) Result type(x)==type(y) x===y otherwise... false null undefined true undefined null true Number String x==toNumber(y) String Number toNumber(x)==y Boolean (any) toNumber(x)==y (any) Boolean x==toNumber(y) String or Number Object x==to