次の 2 つの json オブジェクトがあるとします。
JSON A:
{
"Field A":"1",
"Field B":"2",
"Field D":"Something",
"Field E":"6"
}
JSON B:
{
"Field A":"1",
"Field B":"2",
"Field C":"3",
"Field D":"Different"
}
サンプル関数: function (jsonstringA, jsonstringB)
例 (JSON A と JSON B をパラメーターとして使用する場合):
以下を含む新しい JSON オブジェクトを返します。
{
"Field C":"3", // because function sees jsonstringB had no "Field C"
"Field D": "Different" // sees jsonstringB had a different value for "Field D"
}
jsonstringA を比較のベースとして使用しているため、関数は欠落しているフィールドと jsonStringB の値のみを返すことに注意してください。そのため、「フィールド E」とその値は返されません。
変更された値を含む json オブジェクトを返す関数を考え出すための最善の方法は何ですか?
私が試したこと:チェックしようとしているフィールドを手動で指定して比較を試みましたが、「フィールド」をハードコーディングしないようにする必要があるのは非常に非効率的であり、追加するたびにJSON B の新しいフィールドです。探しているフィールドにハードコーディングする必要があります。