JavaScript 데이터 타입
문자열 값, 숫자, 불리언 값, 배열, 객체를 저장할 수 있습니다.
JavaScript 데이터 타입
JavaScript 변수는 다양한데이터 타입:숫자, 문자열 값, 배열, 객체 등:
var length = 7; // 숫자 var lastName = "게이츠"; // 문자열 var cars = ["포르셰", "볼보", "BMW"]; // 배열 var x = {firstName:"빌", lastName:"게이츠"}; // 객체
데이터 타입의 개념
프로그래밍 과정에서 데이터 타입은 중요한 개념입니다.
변수를操作할 수 있도록 데이터 타입을 이해하는 것은 매우 중요합니다.
데이터 타입이 없으면 컴퓨터는 이 문제를 안전하게 해결할 수 없습니다:
var x = 911 + "Porsche";
"Volvo"에 911을 추가하면 의미가 있을까요? 이렇게 하면 오류가 발생할까요 아니면 결과가 생성될까요?
JavaScript는 위의 예제를 이렇게 처리합니다:
var x = "911" + "포르셰";
当数值和字符串相加时,JavaScript 将把数值视作字符串。
예제
var x = 911 + "Porsche";
예제
var x = "Porsche" + 911;
JavaScript 从左向右计算表达式。不同的次序会产生不同的结果:
JavaScript:
var x = 911 + 7 + "Porsche";
结果:
918Porsche
JavaScript:
var x = "Porsche" + 911 + 7;
结果:
Porsche9117
在第一个例子中,JavaScript 把 911 和 7 视作数值,直到遇见 "Porsche"。
在第二个例子中,由于第一个操作数是字符串,因此所有操作数都被视为字符串。
JavaScript 拥有动态类型
JavaScript 拥有动态类型。这意味着相同变量可用作不同类型:
예제
var x; // 现在 x 是 undefined var x = 7; // 现在 x 是数值 var x = "Bill"; // 现在 x 是字符串值
JavaScript 字符串值
字符串(或文本字符串)是一串字符(比如 "Bill Gates")。
字符串被引号包围。您可使用单引号或双引号:
예제
var carName = "Porsche 911"; // 使用双引号 var carName = 'Porsche 911'; // 使用单引号
您可以在字符串内使用引号,只要这些引号与包围字符串的引号不匹配:
예제
var answer = "It's alright"; // 双引号内的单引号 var answer = "He is called 'Bill'"; // 双引号内的单引号 var answer = 'He is called "Bill"'; // 单引号内的双引号
您将在本教程中学到更多有关字符串的知识。
JavaScript 数值
JavaScript 只有一种数值类型。
写数值时用不用小数点均可:
예제
var x1 = 34.00; // 带小数点 var x2 = 34; // 不带小数点
超大或超小的数值可以用科学计数法来写:
예제
var y = 123e5; // 12300000 var y = 123e5; // 12300000
var z = 123e-5; // 0.00123
이 튜토리얼에서 더 많은 숫자에 대해 배울 수 있습니다.
JavaScript 부울 값부울 값은 두 가지 값만 있습니다:
true 또는
。
예제
false var x = true;
var y = false;
부울 값은 조건 검사에서 자주 사용됩니다.
JavaScript 배열
이 튜토리얼에서 더 많은 조건 검사에 대해 배울 수 있습니다.
JavaScript 배열은 괄호로 쓰입니다.
배열 항목은 콤마로 구분됩니다.
예제
아래의 코드는 cars라는 배열을 선언(생성)하고, 세 가지 항목(차 브랜드)을 포함합니다:
var cars = ["Porsche", "Volvo", "BMW"];
배열 인덱스는 0에서 시작되며, 이는 첫 번째 요소가 [0], 두 번째 요소가 [1]로 이어지는 것을 의미합니다.
JavaScript 객체
이 튜토리얼에서 더 많은 배열에 대해 배울 수 있습니다.
JavaScript 객체는 괄호로 쓰입니다. 객체 속성은name: value
예제
네, 콤마로 구분됩니다.
var person = {firstName:"Bill", lastName:"Gates", age:62, eyeColor:"blue"};
위의 예제에서의 객체(person)에는 네 가지 속성이 있습니다: firstName, lastName, age 및 eyeColor。
typeof 연산자
이 튜토리얼에서 더 많은 객체에 대해 배울 수 있습니다. typeof
JavaScript 변수의 타입을 결정하기 위해 사용할 수 있습니다:
typeof 연산자는 변수나 표현식의 타입을 반환합니다:
예제
typeof "" // 반환 "string" typeof "Bill" // 반환 "string" typeof "Bill Gates" // 반환 "string"
예제
typeof 0 // 반환 "number" typeof 314 // 반환 "number" typeof 3.14 // 반환 "number" typeof (7) // 반환 "number" typeof (7 + 8) // 반환 "number"
typeof 연산자는 배열에 "object"을 반환합니다. 이는 JavaScript에서 배열이 객체에 속하기 때문입니다.
Undefined
JavaScript에서 값이 없는 변수는 undefined
。typeof도 반환합니다。 undefined
。
예제
var person; // 값은 undefined, 타입은 undefined입니다.
다른 어떤 변수도 값을 설정하여 undefined
비우고 있습니다. 그 타입도 undefined
。
예제
person = undefined; // 값은 undefined, 타입은 undefined입니다.
비어 있는 값
비어 있는 값과 undefined
그것은 동일하지 않습니다.
비어 있는 문자열 변수는 값과 타입이 모두 있습니다.
예제
var car = ""; // 값은 "", 타입은 "string"입니다.
Null
JavaScript에서는null
는 "nothing"입니다. 그것은 존재하지 않는 것으로 간주됩니다。
불행히도, JavaScript에서는null
의 데이터 타입은 객체입니다。
또는 null
JavaScript에서는 객체를 이 버그로 이해합니다. 그것은 null
。
또는 값을 설정하여 null
객체를 비우기 위해:
예제
var person = null; // 값은 null, 하지만 타입은 여전히 객체입니다.
또는 값을 설정하여 undefined
객체를 비우기 위해:
예제
var person = undefined; // 값은 undefined, 타입은 undefined입니다。
Undefined과 Null의 차이
Undefined
와 null
의 값은 같지만 타입은 다릅니다:
typeof undefined // undefined typeof null // object null === undefined // false null == undefined // true
원시 데이터
원시 데이터 값은 추가적인 속성이나 메서드가 없는 단순한 데이터 값입니다。
typeof
연산자는 다음 원시 타입 중 하나를 반환할 수 있습니다:
- string
- number
- boolean
- undefined
예제
typeof "Bill" // 반환 "string" typeof 3.14 // 반환 "number" typeof true // 반환 "boolean" typeof false // 반환 "boolean" typeof x // x에 값이 없으면 "undefined"을 반환
복잡한 데이터
typeof
연산자는 다음 두 가지 유형 중 하나를 반환할 수 있습니다:
- function
- object
typeof
연산자는 객체, 배열 또는 null
반환 object
。
typeof
연산자는 함수를 반환하지 않습니다 object
。
예제
typeof {name:'Bill', age:62} // "object"을 반환 typeof [1,2,3,4] // "object"을 반환 ("array"가 아니라, 아래의 주석을 참조) typeof null // "object"을 반환 typeof function myFunc(){} // "function"을 반환
typeof
연산자는 배열을 "object
자바스크립트에서 배열이 객체라는 이유로