>  기사  >  웹 프론트엔드  >  ECMAScript에는 어떤 데이터 유형이 있습니까?

ECMAScript에는 어떤 데이터 유형이 있습니까?

青灯夜游
青灯夜游원래의
2022-01-27 14:06:112242검색

ECMAScript 데이터 유형은 두 가지 유형으로 나뉩니다. 1. 문자열, 숫자, 부울, 정의되지 않음, null 및 기호 유형을 포함한 기본 데이터 유형 2. 객체, 함수 및 배열 유형을 포함한 참조 데이터 유형.

ECMAScript에는 어떤 데이터 유형이 있습니까?

이 튜토리얼의 운영 환경: Windows 7 시스템, ECMAScript 버전 6, Dell G3 컴퓨터.

ECMAScript 데이터 유형은 기본 데이터 유형과 참조 데이터 유형의 두 가지 유형으로 나눌 수 있습니다.

기본 유형

기본 유형은 값 유형이라고도 합니다.

  • 문자열: 임의의 문자열

  • 숫자: 임의의 숫자

  • 부울: true, false

  • 정의되지 않음: 정의되지 않음

  • null: null

  • Symbol

객체 유형

객체 유형은 참조 유형이라고도 합니다

  • 객체: 모든 객체

  • 기능: 특수 객체(객체와의 차이점: 실행 가능 )

  • Array : 특수 객체 (숫자 첨자, 내부 데이터 순서)

데이터의 종류를 판단하는 방법

typeof: 정의되지 않은 수치, 문자 스트링, 불리언 값 등을 판단 가능 , 함수

는 판단할 수 없습니다: null 및 Object, Object 및 Array
데이터 유형의 문자열 표현식을 반환합니다.
instanceof: 객체의 특정 유형을 결정합니다.
===: 정의되지 않음, null


1. 기본 유형 판단 방법:

var a;
console.log(a);//undefined
console.log(typeof a);//"undefined"
console.log(a===undefined);//true
a=4;
console.log(typeof a==="number");//true
a='dewferf';
console.log(typeof a==='string');//true
console.log(typeof a==='String');//false
a=true;
console.log(typeof a === 'boolean');//true
a=null;
console.log(typeof a,a===null);//"object",true

2. 참조 유형 판단 방법

var b1={
	b2:[1,'avc',console.log],
	b3:function(){
	console.log('b3');
	return function(){
		return 'lxyxxx';
	}
	}	
};
console.log(typeof b1.b2);//'object'
console.log(b1 instanceof Object,b1 instanceof Array);//true,false
console.log(b1.b2 instanceof Array,b1.b2 instanceof Object);//true,true
console.log(b1.b3 instanceof Function,b1.b3 instanceof Object);//true,true

console.log(typeof b1.b3);//'function'
console.log(typeof b1.b3 === 'function');//true

console.log(typeof b1.b2[2]);//'function'
console.log(typeof b1.b2[2] === 'function');//true
b1.b2[2](4);//因为b1.b2[2]是函数,所以会执行
b1.b3()();//

Symbol 유형

Symbol이 ECMAScript6에 도입되었습니다. 고유한 값을 나타내는 데이터 유형입니다. 다음 예와 같이 Symbol() 함수를 사용하여 기호 유형 값을 생성해야 합니다.

var str = "123";
var sym1 = Symbol(str);
var sym2 = Symbol(str);
console.log(sym1);          // 输出 Symbol(123)
console.log(sym2);          // 输出 Symbol(123)
console.log(sym1 == sym2);  // 输出 false :虽然 sym1 与 sym2 看起来是相同的,但实际上它们并不一样,根据 Symbol 类型的特点,sym1 和 sym2 都是独一无二的

Symbol 함수의 매개변수는 현재 기호 값에 대한 설명만 나타냅니다. 그래서 그들은 동일합니다. 매개변수의 Symbol 함수의 반환 값이 동일하지 않습니다.

Symbol 기능 이전에는 새 명령을 사용할 수 없습니다. 그렇지 않으면 오류가 보고됩니다. 이는 생성된 Symbol이 객체가 아닌 기본 유형 값이기 때문입니다. 즉,
Symbol 값은 객체가 아니기 때문에 속성을 추가할 수 없습니다. 기본적으로 문자열과 같은 데이터 유형입니다.

【관련 권장사항: 자바스크립트 학습 튜토리얼

위 내용은 ECMAScript에는 어떤 데이터 유형이 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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