grails のマップを JSON に変換する必要があるコードがいくつかあります。次のように、grails コンバーターを使用してマップを JSON オブジェクトに変換しました。
def map=[:].withDefault { [] }
...
def users=service?.staff.each{map<<[(it.id):it.firstName+" "+it.lastName]}
render map as JSON
マップが空の場合、変換後にこれを取得しました [:] $.parseJSON を使用して解析しようとすると、次のエラーが発生しました
JSON.parse: unexpected character
一方、マップが空でない場合、「[2:'Feras Odeh']」をjsonオブジェクトとして取得しました。これを解析しようとすると、取得しました
JSON.parse: expected ',' or ']' after array element
どうすればこれを修正できますか?