객체에서 다른 객체로 속성을 추출한 다음 원래 객체에서 해당 속성을 삭제하는 extract()와 같은 JavaScript 함수를 작성해야 합니다.
예를 들어 -
obj1과 obj2가 두 객체인 경우
obj1 = {color:"red", age:"23", name:"cindy"} obj2 = extract(obj1, ["color","name"])
추출 기능을 통과한 후 다음과 같아야 합니다. -
obj1 = { age:23 } obj2 = {color:"red", name:"cindy"}
따라서 이 함수의 코드를 작성해 보겠습니다 -
예시
const obj = { name: "Rahul", job: "Software Engineer", age: 23, city: "Mumbai", hobby: "Reading books" }; const extract = (obj, ...keys) => { const newObject = Object.assign({}); Object.keys(obj).forEach((key) => { if(keys.includes(key)){ newObject[key] = obj[key]; delete obj[key]; }; }); return newObject; }; console.log(extract(obj, 'name', 'job', 'hobby')); console.log(obj);
출력
콘솔의 출력은 -
{ name: 'Rahul', job: 'Software Engineer', hobby: 'Reading books' } { age: 23, city: 'Mumbai' }