Reflect
.has()
정적 메서드는 in
연산자의 함수판입니다.
The source for this interactive example is stored in a GitHub repository. If you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and send us a pull request.
구문
Reflect.has(target, propertyKey)
매개변수
target
- 속성을 탐색할 객체.
propertyKey
- 탐색할 속성의 이름.
반환 값
객체가 속성을 가지고 있는지 나타내는 Boolean
.
예외
설명
Reflect.has()
메서드는 객체에 속성이 존재하는지 판별할 수 있습니다. in
연산자처럼 동작합니다.
예제
Reflect.has()
사용하기
Reflect.has({x: 0}, 'x'); // true
Reflect.has({x: 0}, 'y'); // false
// 프로토타입 체인에 존재하는 속성도 true 반환
Reflect.has({x: 0}, 'toString');
// .has() 처리기 메서드를 가진 Proxy
obj = new Proxy({}, {
has(t, k) { return k.startsWith('door'); }
});
Reflect.has(obj, 'doorbell'); // true
Reflect.has(obj, 'dormitory'); // false
명세
Specification | Status | Comment |
---|---|---|
ECMAScript 2015 (6th Edition, ECMA-262) The definition of 'Reflect.has' in that specification. |
Standard | Initial definition. |
ECMAScript (ECMA-262) The definition of 'Reflect.has' in that specification. |
Living Standard |
브라우저 호환성
BCD tables only load in the browser
The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.