컴퓨터 프로그램의 본질은 기계의 다양한 정보 (값)의 작업 및 읽기 및 쓰기라고 할 수 있습니다. JavaScript에는 여러 유형의 값이 있으며,이 값은 Primitive (원시 유형)와 객체 (객체)의 두 가지 범주로 나뉩니다.
원어
JavaScript에는 5 가지 유형의 프리미티브가 있습니다.
1. 번호. 정수 또는 소수의 모든 숫자는 유형 번호입니다.
2. 스트링. 문자열 유형.
3.Boolean. 부울 유형, 참 또는 거짓.
4. 널. 이 유형은 NULL의 값이 하나뿐입니다.
5. 정의되었습니다. 이 유형에는 정의되지 않은 값이 하나뿐입니다.
물체
원시를 제외하고 JavaScript의 다른 값은 객체 (객체)입니다. 몇 가지 유형의 객체가 있습니다.
1.JSON 키 값 쌍 객체. 예를 들어 { "name": "bob", "age": 42}와 같은.
2. 배열. [1,4,5,7,9]와 같은.
3. 기능. 함수 () {return true;} 등. JavaScript에는 두 가지 형태의 함수가 있습니다. 1. 실행 가능한 코드 블록; 2. 클래스 생성자. 어떤 형태가 존재하든 함수는 항상 객체입니다.
JS에는 글로벌 오브젝트가 제공됩니다
프로그래밍을 용이하게하기 위해 JavaScript에는 다음과 같은 7 개의 멤버 변수가있는 글로벌 객체가 있습니다.
1. 마스. 수학 객체의 방법을 호출하여 일련의 복잡한 수학 연산을 완료 할 수 있습니다.
2. 번호. 숫자 객체의 멤버 변수에 액세스하여 일부 특수 값을 얻을 수 있습니다.
3. 배열. 배열 객체의 생성자.
4. 기능. 함수 객체의 생성자.
5. 데이트. 날짜 객체의 생성자.
6. 레지 렉스. 정규 표현 객체의 생성자.
7. 오류. 오류 객체의 생성자.
프로그램을 작성할 때는 위의 7 가지 변수에 직접 액세스 할 수 있으므로 글로벌 객체로 사용할 수도 있습니다.
불변 대 부패성
원시와 물체는 분명한 차이를 가지고 있습니다. 모든 프리미티브는 불변이며 모든 객체는 변동성이 있습니다. 문자열 유형을 예제로 사용하여 문자열 메서드를 호출하여 편집 한 후 JavaScript는 편집 된 결과를 새 문자열 객체로 저장하고 원래 문자열 객체는 아무것도 변경하지 않습니다.
코드 사본은 다음과 같습니다.
var s = "테스트";
s.toupperCase (); // 새 문자열 객체를 반환합니다 "테스트"
console.log (s); // "테스트" - 원래 문자열 s는 변경되지 않습니다
실험
JavaScript에서는 키워드 유형을 사용하여 특정 값의 유형을 얻을 수 있습니다.
숫자 유형을 얻으십시오.
코드 사본은 다음과 같습니다.
var n = 42;
Console.log (typeof n);
프로그램의 출력 결과는 숫자입니다.
문자열 유형을 가져옵니다.
코드 사본은 다음과 같습니다.
var s = "테스트";
Console.log (typeof s);
프로그램의 출력 결과는 문자열입니다.
부울 가치 유형을 얻으십시오.
코드 사본은 다음과 같습니다.
var b = true;
Console.log (typeof b);
프로그램의 출력 결과는 부울입니다.
널 유형을 얻으십시오.
코드 사본은 다음과 같습니다.
var x = null;
Console.log (Typeof X);
프로그램은 NULL을 출력해야하지만 실제로 객체를 출력합니다. 그 이유는 NULL 값에서 typeof 작동을 사용할 때 프로그램이 객체를 반환하기 때문입니다. 이것은 첫 번째 버전의 JavaScript 이후에 존재하는 버그입니다. ECMAScript 표준을 공식화하는 동안이 버그를 수정 할 것인지에 대한 흥미로운 논쟁이있었습니다 : http://wiki.ecmascript.org/doku.php?id=Harmony:typeof_null; 마지막 결론은이 버그를 수정하면 너무 많은 웹 사이트에 문제가 발생하므로 당분간 고정되지 않을 것입니다.
정의되지 않은 유형을 가져옵니다.
코드 사본은 다음과 같습니다.
var y = 정의되지 않은;
Console.log (유형 y);
프로그램의 출력 결과는 정의되지 않았습니다.
JSON 객체의 유형을 가져옵니다.
코드 사본은 다음과 같습니다.
var j = { "이름": "bob", "age": 42};
Console.log (Typeof j);
프로그램의 출력 결과는 객체입니다.
배열 객체 유형을 가져옵니다.
코드 사본은 다음과 같습니다.
var a = [2,3,5,7,11];
Console.log (타입 A);
프로그램의 출력 결과는 객체입니다.
기능 객체의 유형 가져 오기 :
코드 사본은 다음과 같습니다.
var f = function () {return true;};
Console.log (typeof f);
함수 객체는 매우 특별하며 연산자 유형은 결과를 함수로 반환합니다.