Chapter 5
Declarative functions are the traditional function forms, and should be used whenever possible because theyâre parsed just once (more efficient) and easy to spot in a page (readable). In addition, all browsers that support JavaScript support this type of function.
Anonymous functions have no name, are assigned a variable or passed as a function parameter, and are parsed each time theyâre accessed. Theyâre useful when some circumstance, such as user input, determines their behavior.
Literal functions are useful for defining methods for objects, or to pass as a parameter. Theyâre also useful in recursion, especially because if given a name, that name is available only internally in the code.
If an object, such as an array, is passed as a function parameter, modifications to the array in the function are reflected outside the function. A function can also return a value, and any modifications to global variables are also reflected outside the function scope.
Rather than define a parameter list, access the arguments array. With this, the number of arguments passed into the function can be easily altered:
function test(ââ) { for (var i = 0; i < arguments.length; i++) { alert(arguments[i]); } } test(1,2,3); test(1,2,3,4);The
thisproperty not only sets but accesses properties within a function.An anonymous function suits these requirements:
function invokeFunction(dataObject,functionToCall) { functionToCall(dataObject); } var funcCall = new Function('x','alert(x)'); ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access