JavaScript函数定义的几种方式

JavaScript 使用关键字 function 定义函数。

一、声明定义

<script>
        //声明定义方式
       
function fn1(param) {
          alert("
我是声明方式定义的");
        }
        alert(typeof fn1);
        fn1();//
函数声明后不会立即执行,会在我们需要的时候调用的时候才执行。
</script>

注意:分号是用来分隔可执行JavaScript语句。 
由于函数声明不是一个可执行语句,所以不以分号结束。

二、表达式定义

/**

 * 表达式定义

 * 表达式定义的函数实际上是一个 匿名函数 (函数没有名称)。

 * 函数存储在变量中,不需要函数名称,通常通过变量名来调用。

 */

var fn2 = function() {

    alert("我是表达式方式定义的");

};

fn2();

注意:表达式定义的函数以分号结尾,因为它是一个执行语句。 

​​​​​​​三、内置的 JavaScript 函数构造器(Function())定义

 

语法:
var function_name = new function(arg1, arg2, ..., argN, function_body)
/**

 * 函数构造器(Function())定义

 * 通过内置的 JavaScript 函数构造器(Function())定义。

 */

var fn3 = new Function("param1","param2","alert('我是构造函数方式定义的')");

fn3();

注意: JavaScript 中,很多时候,你需要避免使用 new 关键字,此定义方式不推荐使用。

​​​​​​​四、函数是对象

JavaScript 中使用 typeof 操作符判断函数类型将返回 "function"

但是JavaScript 函数描述为一个对象更加准确。

JavaScript 函数有 属性  方法

arguments.length 属性返回函数调用过程接收到的参数个数:

toString() 方法将函数作为一个字符串返回:

function myFunction(a, b) {
    return a * b;
}
var txt = myFunction.toString();

函数定义作为对象的属性,称之为对象方法。
函数如果用于创建新的对象,称之为对象的构造函数。

注意:对象是通过引用的指向来完成对象的赋值的,而函数是通过对象的copy(拷贝)来完成赋值的。

未完--待补充

参考资料:http://www.runoob.com/js/js-tutorial.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值