函数 两种定义函数的方式

函数声明

function foo () {}

函数表达式

var foo = function () {}

 

(function() {})()

 

var foo = function bar() {}

 

return function () {}

 

函数声明会被提前

var sum = add(1,2); // 3
console.log(sum);
function add(x, y) {
    x = +x;
  y = +y;
    if(isNaN(x) || isNaN(y)) {
      return;
  }
  return x+y;
}

 

变量会被提前, 而函数表达式不会提前

var sum = add(1,2); //Uncaught TypeError: add is not a function
console.log(sum);
var add = function (x, y) {
    x = +x;
  y = +y;
    if(isNaN(x) || isNaN(y)) {
      return;
  }
  return x+y;
}

 

posted @ 2016-02-18 10:36  bronana  阅读(260)  评论(0编辑  收藏  举报