>웹 프론트엔드 >JS 튜토리얼 >JavaScript에서 Object.prototype.toString을 사용하여 array_javascript 팁인지 확인

JavaScript에서 Object.prototype.toString을 사용하여 array_javascript 팁인지 확인

WBOY
WBOY원래의
2016-05-16 16:06:321240검색

Function.prototype.toString이나 다른 것 대신 Object.prototype.toString을 사용하는 이유는 무엇입니까? 이는 toString 해석 방법과 관련이 있습니다. 다음은 ECMA의 Object.prototype.toString에 대한 설명입니다.

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

Object.prototype.toString( )

toString 메소드가 호출되면 다음 단계가 수행됩니다.
1. 이 객체의 [[클래스]] 속성을 가져옵니다.
2. "[object ", Result (1) 및 "]" 세 문자열을 연결하여 문자열 값을 계산합니다.
3. 반품 결과(2)


프로세스는 간단하게 다음과 같습니다. 1. 객체의 클래스 이름(객체 유형)을 가져옵니다. 2. 그런 다음 [객체, 획득한 클래스 이름]을 결합하여 반환합니다.
ECMA에는 배열에 대한 설명이 다음과 같습니다.
코드 복사 코드는 다음과 같습니다.

새로 생성된 객체의 [[클래스]] 속성은 “배열”로 설정됩니다.

따라서 우리는 배열을 감지하기 위해 다음 코드를 사용합니다:
코드 복사 코드는 다음과 같습니다.

function isArray(o) { return Object.prototype.toString.call(o) === '[객체 배열]' }

이 방법은 인스턴스오브의 페이지 간 문제를 해결할 뿐만 아니라 속성 감지 방법의 문제도 해결합니다. 정말 획기적인 솔루션입니다.
또한 이 솔루션은 날짜, 함수 및 기타 유형의 개체를 결정하는 데에도 적용할 수 있습니다.

다른 여러 가지 방법이 있습니다:
코드 복사 코드는 다음과 같습니다.

var arr = []; 배열 인스턴스 반환

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