Jump to content
  • entries
    146
  • comments
    3
  • views
    78,988

JavaScript Functions in FileMaker

Sign in to follow this  
John Sindelar

843 views

JavaScript Functions for Speed and Profit

The movie below is from one of our most popular demos from “Year in Review” at DevCon 2014. I was talking about what a breakthrough custom functions were back in 2004 and how they unlocked a whole new kind of code-sharing among FileMaker developers. JavaScript functions in FileMaker may unlock even more potential.

Jason Young introduced the idea of using JavaScript as a calculator–as a library of functions–instead of using it for perhaps the more obvious purpose of building interface elements. (Jason’s original article on this can be seen as part 1 of this post.) This gives us a huge opportunity to share and borrow code from the immense catalogue of JavaScript functions and examples.

FileMaker Custom Functions Forum

FileMaker engineers start posting custom functions to a public forum: March 2004

As just one example, we (Jason) rewrote the venerable “namwoB” function in JavaScript. namwoB was the first recursive functions I ever saw and was posted by Andy LeCates back in March of 2004. The title comes from Court Bowman’s name spelled backwards… which is all the functions does, rewriting a string of text in reverse. This simplicity makes it a great way to talk about the different kinds of recursion in FileMaker and what a faster version of the function might look like in JavaScript.

Our example file shows the same recursive custom functions done as a “stack” recursive function (limited to about 10k loops), as a “tail” recursive function (limited to 49,999 loops), and as a JavaScript function executed in a webviewer and then passed into a FileMaker script.

Download the example file

Want more? Subscribe to SeedCode for more tips.

JavaScript Functions in FileMaker are Fast

Looping through 49,000 characters took our tail-recursive custom function almost 3 seconds.

The JavaScript version of the function looped through 10 times that much text–nearly 500,000 characters–in 3/10ths of a second.

And thanks to the improved fmp url in FileMaker 13, we can grab the results of functions like these quite easily. The movie below demos this and walks through our example file. It also gives a nice side-effect-demo of how webviewers get their own thread in FileMaker Pro and what that may mean for trying to measure performance.

The post JavaScript Functions in FileMaker appeared first on SeedCode.

Source

Sign in to follow this  

×

Important Information

By using this site, you agree to our Terms of Use.