C C T B H P N

JavaScript SnapShot2

functions are lambdas

In head element

<script>
  /*
    * Note:
    * - creates and returns anonymous function
    * - lambda capture of pi value
    * - showvalue(obj) is defined in DemoScripts.js
    */
  function CreateFunction() {
    var pi = 3.14159;
    return function() { showvalue(pi); }
  }
</script>
    

In body element

<script>
  CreateFunction()();
</script>
    

Result:

functions are objects

In head element:

<script>
  /*
    * Note:
    * - adds new members to function object
    */
  CreateFunction.name = "CreateFunction";
  CreateFunction.author = "Jim Fawcett";
</script>
    

In body element:

<script>
  showvalue(CreateFunction.name);
  showvalue(CreateFunction.author);
</script>
    

Result: