객체에 대한 참조가 있다고 가정합니다 -
let test = {};
이 객체는 잠재적으로 (즉시 그렇지는 않음) −
와 같은 중첩된 객체를 가질 것입니다.test = {level1: {level2: {level3: "level3"}}};
이러한 객체를 첫 번째 인수로 취한 다음 원하는 수의 키 문자열을 인수로 취하는 JavaScript 함수를 작성해야 합니다.
함수는 키 문자열로 표시되는 중첩 조합이 개체에 존재하는지 여부를 결정해야 합니다.
예시
이에 대한 코드는 -
const checkNested = function(obj = {}){ const args = Array.prototype.slice.call(arguments, 1); for (let i = 0; i < args.length; i++) { if (!obj || !obj.hasOwnProperty(args[i])) { return false; } obj = obj[args[i]]; }; return true; } let test = { level1:{ level2:{ level3:'level3' } } }; console.log(checkNested(test, 'level1', 'level2', 'level3')); console.log(checkNested(test, 'level1', 'level2', 'foo'));
출력
콘솔의 출력은 -
true false