JavaScript는 "." 연산자를 사용하여 객체의 속성과 메서드에 액세스할 수 있습니다. 기본 유형(null, undefine, bool, number, string)은 속성과 메서드가 없는 값 유형이어야 합니다. . 그러나
결과는 매우 간단하지만 잘 생각해보면 정말 이상합니다. String은 값 유형이 아닙니다! 왜 속성과 메서드가 있는 거죠!
내장 개체
JavaScript에는 언어의 기본 기능을 생성하는 일련의 내장 객체가 있습니다. 자세히 살펴보세요
부울
부울 객체는 "true" 또는 "false"라는 두 가지 값을 나타냅니다. 생성자(new 연산자 사용)로 호출되면 Boolean()은 인수를 부울 값으로 변환하고 해당 값을 포함하는 부울 객체를 반환합니다. (new 연산자 없이) 함수로 호출되면 Boolean()은 단순히 인수를 기본 불리언 값으로 변환하고 값 인수가 생략되거나 0, -0, null, "", false로 설정된 경우 이 값을 반환합니다. 정의되지 않았거나 NaN이면 객체가 false로 설정됩니다. 그렇지 않으면 true로 설정됩니다(값 인수가 문자열 "false"인 경우에도 마찬가지).
부울 객체에는 toString 및 valueOf 메소드가 포함됩니다. 부울은 조건문에서 참 또는 거짓 값을 간단하게 판단하는 데 가장 자주 사용됩니다. 부울 값과 조건문의 조합은 JavaScript를 사용하여 논리를 생성하는 방법을 제공합니다.
숫자
Number 개체는 여러 읽기 전용 속성을 포함하는 숫자 래퍼입니다.
• POSITIVE_INFINITY:무한대 //양의 무한대•NaN:NaN //숫자가 아님
Number 개체에는 값의 형식을 지정하거나 변환하는 데 사용할 수 있는 몇 가지 메서드도 있습니다
•toExponential //숫자의 문자열 표현을 지수 형식으로 반환
•toFixed //숫자를 지정된 소수 자릿수로 반올림
•toPrecision //객체의 값이 지정된 숫자를 초과하는 경우 숫자, 지수 표기법으로 변환됩니다.
•valueOf //객체에서 상속됨
String
문자열 개체는 텍스트 값에 대한 래퍼입니다. String 개체에는 텍스트를 저장하는 것 외에도 텍스트에 대한 정보를 조작하거나 수집하는 속성과 다양한 메서드가 포함되어 있습니다. String 개체는 사용하기 위해 인스턴스화할 필요가 없습니다.
String 객체에는 문자열 길이를 반환하는 데 사용되는 읽기 전용 길이 속성만 있습니다. 문자열 객체에는 다양한 메소드가 있습니다
•charAt
•charCodeAt•concat
•fromCharCode•indexOf
•lastIndexOf
•일치
•교체
•검색
•슬라이스
•분할
•substr
•하위 문자열
•LowerCase
•toUpperCase
포장대상
JavaScript에는 위의 세 가지 객체 외에도 Date, Array, Math와 같은 내장 객체가 있으므로 이 세 가지는 자주 사용되므로 내장 객체에 대해 알고 나면 알 수 있습니다. 위의 예가 무엇인지 확인하세요. 문자열의 속성과 메서드가 참조되는 한 JavaScript는 새 문자열을 통해 문자열 값을 내장 개체 String으로 변환합니다. 참조가 끝나면 개체는 삭제됩니다. 따라서 위 코드는 실제로 String 객체의 length 속성과 indexOf 메서드를 사용하고 있습니다.
같은 이유로 숫자와 불리언 값도 비슷하게 처리됩니다. , null 및 undefound에는 해당 개체가 없습니다. 생성된 객체가 있는데 이렇게 하면 되는 걸까요
코드 복사