>웹 프론트엔드 >JS 튜토리얼 >JAVASCRIPT_javascript 기술에서 hasOwnProperty()의 역할 이해

JAVASCRIPT_javascript 기술에서 hasOwnProperty()의 역할 이해

WBOY
WBOY원래의
2016-05-16 17:32:481090검색

JavaScript의 hasOwnProperty 함수 메소드는 객체에 지정된 이름의 속성이 있는지 여부를 나타내는 부울 값을 반환합니다.

hasOwnProperty() 사용 방법:

object.hasOwnProperty(proName)
매개변수 개체가 필요합니다. 객체의 인스턴스입니다.
proName이 필요합니다. 속성 이름의 문자열 값입니다.

객체에 지정된 이름의 속성이 있으면 JavaScript의 hasOwnProperty 함수 메서드는 true를 반환하고, 그렇지 않으면 false를 반환합니다. 이 메서드는 속성이 객체의 프로토타입 체인에 있는지 여부를 확인할 수 없습니다. 속성은 객체 자체의 멤버여야 합니다. 다음 예에서 모든 String 객체는 공통 분할 방법을 공유합니다. 아래 코드는 false와 true를 출력합니다.

코드 복사 코드는 다음과 같습니다.

var s = new String("JScript" );
print(s.hasOwnProperty("split"));
print(String.prototype.hasOwnProperty("split"));

hasOwnProperty: 객체에 사용자가 지정한 이름을 가진 속성이나 객체가 있는지 확인하는 데 사용됩니다. 그러나 이 메서드는 객체가 프로토타입 체인에 속성을 가지고 있는지 여부를 확인할 수 없다는 점에 유의해야 합니다. 속성은 객체 자체의 멤버여야 합니다. 형식은 다음과 같습니다.

JS 코드

1.객체.hasOwnProperty(proName);

proName의 이름이 개체 개체의 속성인지 개체인지 확인합니다.

1. 예시 1:

var bStr = "Test String".hasOwnProperty("split"); // 프로토타입 체인의 속성을 감지할 수 없으므로 false를 얻습니다.

그러나:

"Test String".split(" ")을 성공적으로 호출할 수 있습니다.

2. 예시 2:

var bStr1 = String.prototype.hasOwnProperty("split"); //String 객체의 프로토타입에는 이미 이 속성이 있으므로 자연스럽게 true를 반환합니다.

3. 예시 3

var bObj = ({fnTest:function(){}}).hasOwnProperty("fnTest") // 객체의 속성이 존재하므로 true를 반환합니다.

객체 객체

객체 객체 자체는 별로 유용하지 않지만, 다른 클래스를 이해하기 전에 먼저 객체를 이해해야 합니다. ECMAScript의 Object 객체는 Java의 java.lang.object와 유사하므로 ECMAScript의 모든 객체는 이 객체에서 상속됩니다. Object 객체의 모든 속성과 메서드는 다른 객체에 나타나므로 Object 객체를 이해하면 됩니다. 다른 개체를 더 잘 이해합니다.

객체 객체에는 다음과 같은 속성이 있습니다.

생성자

객체를 생성하는 함수에 대한 참조(포인터)입니다. Object 객체의 경우 이 포인터는 원래 Object() 함수를 가리킵니다.
프로토타입
객체의 객체 프로토타입에 대한 참조입니다. 모든 객체에 대해 기본적으로 Object 객체의 인스턴스를 반환합니다.

객체 객체에도 여러 가지 메서드가 있습니다.

hasOwnProperty(property)

객체에 특정 속성이 있는지 확인합니다. 이 속성은 문자열로 지정되어야 합니다. (예: o.hasOwnProperty("name"))
IsPrototypeOf(object)
개체가 다른 개체의 프로토타입인지 확인합니다.
PropertyIsEnumerable
for...in 문을 사용하여 주어진 속성을 열거할 수 있는지 여부를 결정합니다.
ToString()
객체의 원시 문자열 표현을 반환합니다. Object 객체의 경우 ECMA-262는 이 값을 정의하지 않으므로 ECMAScript 구현마다 값이 다릅니다.
ValueOf()
이 객체에 가장 적합한 원래 값을 반환합니다. 많은 개체의 경우 이 메서드에서 반환되는 값은 ToString()
의 반환 값과 동일합니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.