Computer >> 컴퓨터 >  >> 프로그램 작성 >> JavaScript

JavaScript의 개체에서 속성 추출

<시간/>

객체에서 다른 객체로 속성을 추출한 다음 원래 객체에서 해당 속성을 삭제하는 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' }