If I have a function in SSJS and I want to pass one “firm” parameter and a list of others that can change, what’s the best way to do that? With some kind of hashMap or JSON or something else?
for example given something like:
myfunction( code:string, paramList:??) {
// do stuff here
}
Basically the function will create a document. And sometimes I’ll have certain fields I’ll want to pass in right away and populate and other times I’ll have different fields I will want to populate.
How would you pass them in and then parse out in the function?
Thanks!
Use the arguments parameter… In JavaScript you are not required to define any of your parameters in the function block itself. So, for example, the following call:
can legally be passed to the following function:
when I do this, I usually place a comment in the parens to indicate I am expecting variable arguments:
Then, you can access those arguments like this:
Wallah, variable arguments.
But, more to the point of your question, I don’t think you need to actually send variable arguments, nor go through the hassle of creating actual JSON (which is really a string interpretation of a javascript object), just create and send the actual object then reference as an associative array to get your field names and field values:
then in your function, which now needs only two parameters:
Hope this helps.