FORM
関数の入力として、またはのような文字列スコープ名を取得しますCOOKIE
。ブラケット表記でこれらのトップレベルのスコープにアクセスするにはどうすればよいですか?
私は次のようなものを探しています:
var myScope = "FORM";
global[myScope];
明らかにそれはうまくいきません:)
(私はどんな種類のeval
関数も探していません。関数switch
よりも適切なスコープを取得するために手動で文字列を調べたいeval
です...)
編集
リクエストの早い段階で簡単にアクセスできる関数を呼び出して、間違った種類のデータを送信している、または必要なデータを送信していない悪いリクエストを特定できるようにするために、機能が必要です。
FORM.data1:numeric
たとえば、変数、FORM.data2:bit
およびを必要とするリクエストでは、できるだけ早く次の関数を呼び出しますCOOKIE.data3:string
。
<cfset require({
"FORM" : {
"data1":"numeric",
"data2":"bit"
},
"COOKIE":{
"data3":"string"
}
})>
次のほうが少し簡単だったかもしれないことは承知しています。
<cfset require({
"FORM.data1":"numeric",
"FORM.data2":"bit",
"COOKIE.data3":"string"
})>
使用するだけでisDefined
なく、他の機能のためにもう少し柔軟性が必要です。