프런트 엔드 인터뷰 질문 --- Object.defineProperty (2)

코드 워드는 쉽지 않습니다. 도움이되는 학생들은 제 WeChat 공식 계정 인 Code Program Life에 주목하기를 바랍니다. 감사합니다!

지난 호에서 Object.defineProperty대한 세 가지 인터뷰 질문을 공유했으며 오늘 한 가지 더 공유하겠습니다. 이것은 또한 Baidu 의 인터뷰 질문입니다.

var obj = {
    
    
    a:1,
    b:2,
    c:3
}
for(var k in obj){
    
    
    obj[k] += 1;
}

console.log(obj);
// 输出:
/*
{
    a:3,
    b:3,
    c:5
}
*/

주제 요구 사항은 다음과 같습니다. 기존 객체에는 세 가지 속성 a, b 및 c가 있으며 값은 1, 2 및 3입니다. 그런 다음 루프 순회를 수행하고 속성 값에 대해 +1 연산을 수행 한 다음 객체를 출력 할 때 a, b, c의 값이 3, 3, 5 여야합니다.

우리는 경우 작동하지 않는 , 그 출력의 내용이 확실히 2,3,4는 요청의 대상이며, 3,3,5- 분명히 우리가 사용해야 Object.defineProperty을 .

var _obj = {
    
    
    a:1,
    b:2,
    c:3
}
var obj = {
    
    };

for(var k in _obj){
    
    
    Object.defineProperty(obj,k,{
    
    
        enumerable:true,
        writable: k === 'b' ? false:true,
        value: ++_obj[k]
    })
}

for(var k in obj){
    
    
    obj[k] += 1;
}

console.log(obj);

여기에 사진 설명 삽입
비슷한 주제를 볼 때 먼저 Object.defineProperty를 생각해야합니다 .
후속 인터뷰 질문은 지속적으로 업데이트되며 가장 포괄적 인 최신 질문이 공개 계정 에 먼저 공개 됩니다.


WeChat 미니 프로그램 코스 디자인, 완벽한 디자인 요구 사항, 개인 문의 QQ : 505417246

다음 WeChat 공개 계정에 주목하세요. WeChat 애플릿, Vue, TypeScript, 프론트 엔드, 유니 앱, 풀 스택, Nodejs, Python 및 기타 실용적인 학습 자료를받을 수 있습니다.
최신의 가장 완벽한 프론트 엔드 지식 요약 및 프로젝트 소스 코드는 가능한 한 빨리 WeChat 대중에게 공개 될 예정입니다. 아니요,주의 해주세요, 감사합니다!

여기에 사진 설명 삽입

추천

출처blog.csdn.net/m0_46171043/article/details/113093980