AJAX を多用する Web アプリケーションを開発しています。サーバーは、応答のさまざまな部分を連結するために、配列で応答することがよくあります。
これらの配列のキーを次の 2 つの中で処理するための最良の解決策は何だろうか (JSON のエンコードとデコードは示されていません)。
ストリングス
このソリューションは、特に JavaScript では読みやすいですが、非常に脆弱で保守が困難です。
PHP :
<?php
return array(
'key_name_1' => 'foo',
'key_name_2' => 'bar'
);
?>
JavaScript :
var result = ajax(...);
alert(result.key_name_1);
定数
これは確かな解決策であり、短いキーと数値キーを使用できますが、重くて読みにくいです (リフレクションを使用して JavaScript 定数の生成を自動化することは、私の場合は受け入れられる解決策ではなく、とにかくすべての欠点を解決するわけではありません)。 .
PHP :
<?php
class Answer
{
const CONSTANT_1 = 1;
const CONSTANT_2 = 2;
}
return array(
Answer::CONSTANT_1 => 'foo',
Answer::CONSTANT_2 => 'bar'
);
?>
JavaScript :
Answer.CONSTANT_1 = <?php echo Answer::CONSTANT_1; ?>
Answer.CONSTANT_2 = <?php echo Answer::CONSTANT_2; ?>
var result = ajax(...);
alert(result[Answer.CONSTANT_1]);
あなたによると、最良の選択は何ですか?