[JavaScript基礎] 函式,初識作用域

weixin_34214500發表於2018-11-13

函式 function

注:程式設計要求:高內聚,弱耦合
定義

函式定義與變數定義要求相同;
多個單詞拼接在一起需要符合駝峰規範,第一個英文首字母小寫,其他單詞首字母大寫


函式宣告
function demo() {}

function 函式名(引數) {
   函式體、語句
}

函式表示式

  1. 命名的函式表示式 var demo = function abc() {}
  2. 匿名的函式表示式 var demo = function() {}
var 函式名 = function(引數) {
   函式體、語句
}

組成部分

函式名稱

function 函式名稱(引數) {
   函式體、語句
}

引數(非必須,可有可無)

  1. 形參
  2. 實參 傳入引數不限制資料型別
//- 形參
function sum(a + b) {
  var c = a + b;
  console.log(c);
}
//- 實參
sum (2, 3)

不限制引數個數
在每個函式裡都有隱式的arguments,實引數組


返回值 return

終止函式

function sum(a, b) {
  console.log(a)
  return
  console.log(b) //不執行
}

返回

function sum() {
  return 123; //-既返回123,又終止函式
}
var num = sum();
console.log(num); //123

作用域

在script標籤下全域性定義的變數叫全域性變數
在函式裡面定義的變數叫區域性變數

函式裡面能呼叫函式外面的變數,越往裡優先順序越高。
彼此獨立的函式,不能互相訪問內部變數。

var a = 123;
function test1() {
  var b = 234;
  function test2() {
    var c = 345;
    console.log(b) //- 234 
  }
  console.log(c) //- 報錯,獲取不到C
}

相關文章