一些js知识点总结

时间:2021-12-23 20:06:51

1. 函数声明与函数表达式

  解析器在像执行环境中加载数据时,会先读取函数声明,并使其在执行任何代码之前都可以访问,对于函数表达式,必须等到解析器执行到它所在的代码行,才会真正被执行。

  例:   

alert(sum(10,10));
function sum(n,m){
return n + m;
}

   以上代码可以正常运行,因为解析器通过函数声明提升的过程,读取并将函数声明添加到执行环境中。

  而当使用函数表达式时:

alert(sum(10,10));
var sum = function (n,m){
return n + m;
}

  程序在执行到函数所在的语句之前,变量sum中不会保存对函数的引用,而且第一句话就会导致 "unexpect identifier"(意外标识符)错误,并不会继续执行。

  除了什么时候可以通过变量访问函数之外,函数声明与函数表达式的语法其实是等价的。