JSON経由でPerlオブジェクトをjavascriptに渡す必要があるプロジェクトを行っています。「中間」オブジェクト定義に関して問題に直面しています。
Perl では、オブジェクトはハッシュで表され、プログラマーは「中間」に何かを定義する必要はありません。プロパティが作成されると、すべての中間オブジェクトがハッシュ参照として自動的に作成されます。例えば
$graph{chart}{yAxis}{title} = "Temperature Tracking";
ただし、このオブジェクトが Javascript に渡されると、次のような「中間」オブジェクトに新しいプロパティを追加したい場合:
graph.chart.xAxis.title = "Time Sequence";
「未定義のgraph.chart.xAxis」エラーが発生します。Perl とは異なり、単にプロパティを割り当てるだけでは、Javascript は自動的にオブジェクトを作成しません。
現時点では、以下のソリューションを使用する必要があります。
if (!graph.chart.xAxis) {
graph.chart.xAxis = {};
graph.chart.xAxis.title = "Time Sequence";
}
残念ながら、私たちのプロジェクトでは、Perl から渡されたオブジェクトは非常に動的であり、Javascript が認識できないオブジェクトが他にもたくさんあります。上記の方法では、JS コードがかなり長くなり、「醜い」ものになります。Javascript を Perl のように動作させるためのより良い解決策はありますか?つまり、中間オブジェクトを手動で作成する必要はありませんか?