js函数声明与赋值详解

来源:互联网 发布:苹果mac办公软件 免费 编辑:程序博客网 时间:2024/06/05 21:59
  • 直接声明函数
a();function a(){  alert('...');}//函数的声明会优先读取,无论函数的执行语句放在声明前面还是后面都会正常执行
  • 表达式方法定义函数
var a = function(){     alert('...');}a();//函数的定义不会优先加载,函数的执行语句必须放在定义的后面,否则会报错。
  • 以上两种方法结合起来(会统一按照第二种方法处理)
var b = function a(){    alert('x'x'x');}//直接执行函数aa(); 结果会报错,不能识别a//执行函数bb();正常执行,打印出xxx//这种定义方式相当于把匿名函数赋值给b
  • 函数的赋值相关问题
//声明一个函数function a(){        var i=1return i;    }//打印出函数名alert(a);  会把整个函数的代码打印出来//打印出函数名(带括号)alert(a()); 会打印出函数返回值,1//直接赋值函数名var b = a;  会把整个函数赋值过去//赋值函数名(带括号)var b = a(); 赋值的是函数的返回值,1//如果这样赋值var b = function a(){         var i=1return i;    }同 var b = a 赋值方法类似
原创粉丝点击