建议5:比较function语句和function表达式

  在Javascript语言中,既有function语句,也有函数表达式,这是令人困惑的.因为它们看起来是相同的.一个function语句就是一个值为一个函数的var语句的简写形式.

  下面语句:

function f(){}

相当于:

var f = function(){}

  建议使用第二种形式,因为他能明确表示f是一个包含一个函数的变量.要用好JavaScript,理解函数就是数值是很重要的.

  function语句在解析时会被提升,这意味着不管function被放置在哪里,她都会被移动到定义时所在作用域的顶层.这放宽了函数必须先声明后使用的要求,当然也会造成混乱.

  官方语法约定,一个语句不能够以一个函数表达式开头,而以单词function开头的语句是一个function语句.解决这个问题的方法就是把函数表达式阔在一个圆括号之中.

(function(){}())
原文地址:https://www.cnblogs.com/chorkiu/p/12082154.html