2012-08-11 41 views
1

閱讀時Eloquent Javascript (Chapter 6)我在努力掌握基本概念。有關於Javascript中的高階函數的討論。下面的代碼中的函數processNumbers()是一個高階函數嗎?這是JavaScript中基本/簡單高階函數的例子嗎?

function addNumbers(number1, number2) { 
    return (number1 + number2); 
} 

function processNumbers(action, number1, number2) { 
    return action(number1, number2); 
} 

document.write(processNumbers(addNumbers, 2, 10));​​​​​​​​ 
+0

請閱讀[高級功能維基百科文章]的第一段(http://en.wikipedia.org/wiki/Higher-order_function)。 – Blender 2012-08-11 06:47:02

回答

1

維基百科:

在數學和計算機科學中,高階函數(也函數形式,功能或仿函數)是執行以下操作中的至少一個的函數:

  • 採取一個或多個作爲輸入
  • 輸出的功能

所以是的,processNumbers是一個更高級別的功能,因爲它通過action參數輸入函數作爲輸入。