函數就是物件

在 JavaScript 中,函數就是物件的一種,以下先針對函數有一個基礎的介紹

函數就是物件

函數就是物件的一種,所以所有可以對物件做的事都可以對函數做

  • 將函數指派為一個變數的值
  • 將函數當作參數傳入另外一個函數
  • 函數也可以有屬性和方法

函數特有屬性

另外有幾個特性是函數特有的

  • Name
    函數不一定要有名稱,沒有名稱的函數就稱為匿名函數 Anonymous Function
  • Code
    函數中你所寫的程式是函數的屬性之一,但函數還有其他屬性

函數範例

當我們建立一個函數且追加一個屬性,並透過 console.log 印出時,只會印出函數內容,但呼叫屬性時還是可以取得先前建立的值,因為函數就是物件

1
2
3
4
5
6
7
8
9
10
function greet() {
console.log('hi');
}

greet.language = 'english';

console.log(greet); // function greet() {
// console.log('hi');
//}
console.log(greet.language); // english