Const 확장
4310 단어 es6
(4) 반환 값: 수정된 객체.(5) 사용법:
(6) 예:
var obj={name:'John'};
//
Object.defineProperty(obj,'newDateProperty',{
value:101,
});
console.log(obj);
결과는 다음과 같습니다.
var obj={name:'John'};
//
Object.defineProperty(obj,'newDateProperty',{
value:101,
writable:true
});
//
obj.newDateProperty=111;
console.log('property value:'+obj.newDateProperty);
결과: writable 속성이true로 설정되어야만 새 속성의 값을 수정할 수 있습니다.2.Object.hasOwnProperty () 함수 (1) 개념: 원형 체인의 속성인지 확인하고false를 되돌려줍니다. 그렇지 않으면true (즉 사용자가 정의한 속성) 를 되돌려줍니다.(2) 구문: object.hasOwnProperty(propertyName)(3) 매개변수:propertyName:String 유형, 지정된 속성 이름.(4) 예:
//
const person={
name:' ',
say:function(){
console.log(' ')
}
}
// name
console.log("name:"+person.hasOwnProperty("name"));
// say
console.log("say:"+person.hasOwnProperty("say"));
결과: 사용자 정의 존재하는 속성과 방법을 검출할 수 있습니다
//
const person={
name:' ',
say:function(){
console.log(' ')
}
}
//
person.__proto__.age=20;
//
person.prototype={
run:function(){
console.log(' ');
}
}
// name
console.log("name:"+person.hasOwnProperty("name"));
// say
console.log("say:"+person.hasOwnProperty("say"));
// age
console.log("age:"+person.hasOwnProperty("age"));
// run
console.log("run:"+person.hasOwnProperty("run"));
결과: 사용자 정의 속성과 방법을 스스로 검출할 수 있고, 원형 체인의 속성과 방법을 검출할 수 없습니다.
2. 대상의 밀봉, 동결 1.Object.seal () 밀봉 대상 (1) 개념: 한 대상을 밀봉하고 밀봉된 대상을 되돌려줍니다.밀봉 대상은 새로운 속성을 추가할 수 없고 기존 속성을 삭제할 수 없으며 기존 속성의 매거성, 설정 가능성, 쓰기 가능성을 수정할 수 없지만 기존 속성 대상의 값을 수정할 수 있는 것을 말한다.(2) 예:
코드는 다음과 같습니다.
onst obj={
name:'John',
sex:'Lady'
}
//
obj.age=30;
//
obj.name="Rose";
//
delete obj.sex;
// obj
console.log(obj);
결과: 새로운 속성을 추가하여 기존 속성의 값을 수정하고 기존 속성을 삭제할 수 있습니다.
const obj={ name:'John'}
//
Object.seal(obj);
//
obj.age=30;
console.log("obj.age:"+obj.age);
결과: 대상을 밀봉하면 새로운 속성을 추가할 수 없습니다.
const obj={ name:'John'}
//
Object.seal(obj);
//
obj.name='Bckus';
console.log(obj.name);
결과: 대상을 밀봉한 후 기존 속성의 값을 수정할 수 있습니다.
const obj={ name:'John'};
//
Object.seal(obj);
//
delete obj.name;
// Obj
console.log(obj);
결과: 대상을 밀봉한 후 기존 속성을 삭제할 수 없습니다.
코드는 다음과 같습니다.
const obj={ name:'John'};
//
Object.seal(obj);
//
Object.defineProperty(obj,'name',{
configurable:true,
writable:true,
enumerable:true
})
결과: 브라우저가 오류를 보고했습니다. 대상을 밀봉한 후에 기존 속성의 매거성, 설정 가능성, 쓰기 가능성을 수정할 수 없습니다.2.Object.freeze () 동결 대상 (1) 개념: 이 방법은 Object보다 낫다.동결 대상은 새로운 속성을 추가할 수 없고 기존 속성을 수정할 수 없는 값, 기존 속성을 삭제할 수 없는 것, 기존 속성을 수정할 수 없는 매거성, 설정 가능, 쓰기 가능한 대상을 말한다.이 대상은 영원히 바꿀 수 없다는 얘기다.(2) 예: 테스트와object만 합니다.seal () 의 다른 점은 기존 속성의 값을 수정할 수 없다는 것입니다.
var obj={name:'John'}
//
Object.freeze(obj)
//
obj.name='Backus';
console.log('obj.name:'+obj.name);
결과: 객체를 동결한 후에는 기존 속성의 값을 수정할 수 없습니다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
【DOM 조작(전편)】JavaScript의 addEventListener에 대해서, 「・・하면」을 정리해 보았다이번에는 JavaScript의 DOM 조작 addEventListener 에 대해 정리해 보았습니다. DOM 조작 초보자의 참고가되면 기쁩니다. 기본 DOM 조작 (addEventListener)의 흐름 ① 우선은 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.