У меня есть функция ColdFusion "foo", которая принимает три аргумента, а вторая вторая необязательна:
<cffunction name="foo" access="public" returntype="any">
<cfargument name="arg1" type="any" required="true" />
<cfargument name="arg2" type="any" required="false" default="arg2" />
<cfargument name="arg3" type="any" required="false" default="arg3" />
...
<cfreturn whatever />
</cffunction>
Я хочу вызвать foo, передавая в arg1 и arg3, но оставляя arg2. Я знаю, что это возможно, если я вызываю функцию с помощью cfinvoke
, но этот синтаксис действительно многословен и сложный. Я пробовал эти два подхода, ни один из них не работает:
<cfset somevar=foo(1, arg3=3) /> <!--- gives syntax error --->
<cfset somevar=foo(1, arg3:3) /> <!--- gives syntax error --->