2 개의 JSON을 비교하기 위해 deep-diff Node.js 라이브러리를 사용합니다. 비교를위한 필드를 생략하기위한 사전 필터 조건도 있습니다. 필자의 사전 필터 조건이 다중 속성 인 경우 어떻게 지정합니까? 주어진 예에서 사전 필터 속성은 name
입니다. 하나 이상의 속성을 추가하려면 어떻게 지정해야합니까? 미리 감사드립니다.프리 필터 조건 - deep-diff Node.js
var diff = require('deep-diff').diff;
var lhs = {
name: 'my object',
description: 'it\'s an object!',
details: {
it: 'has',
an: 'array',
with: ['a', 'few', 'elements']
}
};
var rhs = {
name: 'updated object',
description: 'it\'s not an object!',
details: {
it: 'has',
an: 'array',
with: ['a', 'few', 'more', 'elements', {
than: 'before'
}]
}
};
var differences = diff(lhs, rhs, function(path, key) {
return key === 'name';
});
console.log(differences);
당신은 하드 코딩 된 값을주는 대신에보다 일반적인 방법으로이 작업을 도와 줄 수 있습니다. 예를 들어 값 배열의 함수를 전달하는 것입니다. TIA – jojo
var inputArray = [ "name", "description"]; VAR 차이 = 키 DIFF (좌, 우, 함수 (경로) { VAR의 truthValue = 거짓 참인 (I inputArray의 VAR) { 경우 (키 === I) { truthValue =; } } return truthValue; }); – jojo
내 답변이 업데이트되었습니다. 도움이되기를 바랍니다. – DAXaholic