javaScript 定义函数的三种方式

1、命名函数定义

<code>function abc(){
console.log("a");

}/<code>

2、匿名函数定义

匿名函数没有名字,可以设置给一个变量,或者设置给一个对象的属性

命名函数可以在函数定义之前和之后执行,但是匿名函数只能在函数定义后执行

设置给一个变量

<code>var  fn=function(){
console.log("b");
} /<code>

设置给一个对象的属性

<code>var obj={
a:1,
b:2,
c:function(){
console.log("ccc");
}
}/<code>

自执行匿名函数

缺点:只能执行一次,无法再次调用

<code>(function(){
console.log("aa");
})();/<code>

3、构造函数创建

构造函数中,前面的内容就是这个创建函数的所有参数,最后一个内容就是这个函数执行语句块

要求所有内容都必须是字符串

缺点,构造函数创建函数缺点是运行速度慢,效率低,因为需要将所有的字符串转换为代码

<code>var fn=new Function("a","b","console.log(a+b)");/<code>

关于函数

1、在这里script标签中的函数一旦创建成功,后面的所有script标签中都可以使用该函数

2、当执行到当前script标签时,预先将当前script标签中所有的命名函数先存储在堆中,并且在栈中给他定义函数名引用该函数地址

3、函数也是对象


分享到:


相關文章: