>  기사  >  웹 프론트엔드  >  JavaScript 데이터 유형에 대한 자세한 소개

JavaScript 데이터 유형에 대한 자세한 소개

零下一度
零下一度원래의
2017-07-17 16:05:401152검색

1. 기본 데이터 유형 및 참조 데이터 유형

 ECMAScript에는 기본 데이터 유형과 참조 데이터 유형이라는 두 가지 유형의 값이 포함됩니다.

  기본 데이터 유형은 단순한 데이터 세그먼트를 나타내고, 참조 데이터 유형은 여러 값으로 구성된 객체를 나타냅니다.

 변수에 변수를 할당할 때 파서가 가장 먼저 확인해야 하는 것은 해당 값이 기본 유형 값인지 참조 유형 값인지입니다.

2. 일반적인 기본 데이터 유형:

 숫자, 문자열, 부울, Null 및 정의되지 않음. 기본 데이터 유형은 변수에 포함된 실제 값을 직접 조작할 수 있으므로 값으로 액세스됩니다. 예:

 var a = 10;

 var b = a;

 b = 20;

  console.log(a); // 10 value

  위에서 b는 사본만큼 가치가 있는 사본을 얻습니다. 두 변수의 값은 동일하지만 두 변수는 서로 다른 두 가지 기본 데이터 유형 값을 저장합니다.

 B는 단지 a의 복사본을 저장합니다. 따라서 b의 변화는 a에 영향을 미치지 않습니다.

JS는 총 6개의 데이터 유형을 정의했습니다. 즉, undefine, null, boolean(부울), number(숫자), string(문자열), object( object ). (다른 데이터 유형은 ES6에 정의되어 있습니다). 그중 첫 번째 5는 단순 데이터 유형이고 객체는 복잡한 데이터 유형입니다.

각 데이터 유형을 이해하기 전에 먼저 변수에 대해 알아보겠습니다. 어떤 언어에서든 변수는 정보를 저장하는 컨테이너입니다. 예를 들어 수학에서 x = 5이면 x는 숫자 5의 컨테이너이고 x는 변수입니다. JS에서 변수를 정의하려면 var 키워드를 사용하세요. 예: var x = 5;

이 시점에서 우리는 데이터 유형이 무엇인지 잘 이해했습니다. 수학에서는 숫자도 정수, 소수, 음수로 나뉩니다. . . 여러 유형이 있으며 각 유형에 어떤 알고리즘이 적합한지에 대한 명확한 규정이 있습니다. 따라서 JS 언어에는 이러한 6가지 데이터 유형이 정의되어 있으며 각 유형의 사용 규칙 및 사용 시나리오가 정의되어 있습니다. 다음으로 하나씩 살펴보겠습니다.

각 유형에 대해 이야기하기 전에 먼저 js 연산자인 typeof (변수의 데이터 유형을 감지하는 데 사용됨)을 소개합니다.

var a;

typeof(a); //undefine

var b = 123;

typeof b; //number

위 코드는 typeof()가 선택 사항임을 보여줍니다.

undefine

정의되지 않은 값은 단 하나뿐입니다.

그럼 먼저 정의되지 않은 변수를 정의해 보겠습니다.

var a = undefine; 요점은? 실제로 변수를 정의하는 데는 undefined를 사용하지 않지만, 변수를 초기화하지 않으면 자동으로 undefined 값이 할당됩니다. 예를 들면 다음과 같습니다.

var a
; 이때 a에는 자동으로 undefed 값이 할당됩니다.

그럼 왜 이러는 걸까요? 수학에 대해 생각해 봅시다. x만 쓰면 이 x가 정수, 소수, 음수라고 말할 수 있나요? 확실히 그렇지 않습니다! 마찬가지로, 정의되지 않은 데이터 유형이 없으면 변수 var a를 정의합니다. 이 변수는 숫자라고 말할 수 있습니까? 끈? 아니면 객체? 당연히 그렇지 않습니까? 이제 정의되지 않았으므로 이 a 는 정의되지 않은 유형이라고 말할 수 있습니다. 이것이 정의되지 않은 데이터 유형의 의미입니다.

null

null 값은 하나만 있습니다.

var b = null
;

논리적 관점에서 null은 null 포인터 개체를 나타냅니다. 그렇다면 null의 용도는 무엇입니까?

typeof null
을 사용하면 반환되는 내용이

null이 아니라 object라는 것을 알 수 있습니다. 하하, 거짓말쟁이군요. typeof가 데이터 유형을 감지할 수 있다고 하지 않았나요? 실제로 이는 null의 사용을 정확하게 보여줍니다. 향후 객체 저장을 준비하기 위해 변수를 정의한다면. 그렇다면 이 변수를 null로 초기화하는 것이 좋습니다. 여기에서 언급해야 할 또 다른 사항은 정의되지 않음이 null 값에서 파생된다는 것입니다. 따라서

undefine == null; //true

boolean

에는 true와 false라는 두 가지 값이 있습니다.

var c = true;

부울 유형에는 두 개의 값만 있지만 js의 모든 데이터 유형은 부울 값으로 변환될 수 있습니다. 변환 규칙은 다음과 같습니다.

                                                                          ~          ​공 문자열 비어 있지 않은 문자열 빈 문자열

숫자 -0이 아닌 디지털 값 ​​(무한대 포함) 0/nan

개체 모든 개체 null

underfined 해당 없음 정의되지 않음 흐름 제어 문은 매우 중요합니다.

number


이 유형은 숫자를 나타냅니다.

var f = 1234566

;

var g = 1.2356

;

또한 숫자 유형에는 특수 값도 있습니다:

NaN( 숫자) a 숫자)

이 값은 값을 반환해야 하는 피연산자가 값을 반환하지 않는(오류가 발생하지 않도록) 상황을 나타내는 데 사용됩니다. 예를 들어, 다른 프로그래밍 언어에서는 숫자 값을 0으로 나누면 코드 실행이 중지되는 오류가 발생합니다. 그러나 JavaScript에서는 0으로 나눈 모든 값이 NaN을 반환하므로 다른 코드 실행에 영향을 미치지 않습니다.

string

다음 유형을 사용하여 문자열을 나타냅니다.

var s = "abcdef";

var t = "Beijing"

;

문자열에는 작은따옴표(')가 있거나 다음으로 표시될 수 있습니다. 큰따옴표(").

변수가 작은따옴표나 큰따옴표로 표현되는 한 변수는 문자열입니다 . 다음 예를 참조하세요.

var a = "true"; typeof a; //" string"

var b = "5689"; typeof b; //"string"

object

객체는 데이터와 함수의 모음입니다

.

var o = new Object();

o.name="beijing"; //객체 속성

o.run = function(){}; //객체 메서드

객체를 생성하면 js가 자동으로 다음 기본값을 추가합니다.

constructor - 현재 객체를 생성하는 데 사용되는 함수를 보유합니다.

hasOwnProperty(propertyName) - 지정된 속성이 현재 객체 인스턴스에 있는지 확인하는 데 사용됩니다(인스턴스가 아님). 그 중 매개변수인 속성 이름(propertyName)은 문자열 형식으로 지정해야 합니다(예: o.hasOwnProperty("name"))

isPrototypeOf(object) - 수신을 확인하는 데 사용됩니다. . 객체가 다른 객체의 프로토타입인지 여부.

propertyIsEnumerable(propertyName) - for-in 문을 사용하여 지정된 속성을 열거할 수 있는지 확인하는 데 사용됩니다.

toString() - 객체의 문자열 표현을 반환합니다. valueOf() ——객체의 문자열, 숫자 또는 부울 표현을 반환합니다. 일반적으로 toString() 메서드의 반환 값과 동일합니다.

위는 js의 6가지 기본 데이터 유형을 살펴보겠습니다. 다음 글에서 6가지 데이터 유형 간의 상호 변환에 대해 알아보세요

위 내용은 JavaScript 데이터 유형에 대한 자세한 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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