データ型(datatype)
データ型は
データ型はプログラミング言語で使用できます
データの種類を指します.
1.JSのデータ型特徴
JavaScriptのすべての値にデータ型があります.
JavaScript ES 6は7種類のデータ型を提供します.
JavaScriptが提供する7つのデータ型は2つあります.
元のタイプ(元のデータ型)とオブジェクトタイプ(object/referenceタイプ)に分けることができます.
primitive data type
1. number
JAvascriptのnumber typeはすべての数字を誤って処理します.
整数で表すのも間違いです.したがって、整数で表す数字については、
離れてもミスをする.
整数を表すための資料型はありません.
(Java学習ではint、long、float、doubleなどのタイプはありません)
小数点を表すことができるほか、番号のタイプ
3つの特殊な値が表現できます.
+無限(正無限)、-無限(負無限)、
とNaN(「Not a Number」、算術演算不可).
ex)
const count = 30; // > 정수
const size = 30.1; // > 실수
console.log(`value: ${count}, type: ${typeof count}`);// > number type 출력
console.log(`value: ${size}, type: ${typeof size}`);// > number type 출력
// 특이한 값: infinity, -infinity, NaN
const infinity = 3 / 0;
const negativeInfinity = -3 / 0;
const nAn = `not a number` / 3;
console.log(infinity); // > Infinity
console.log(negativeInfinity); // > -Infinity
console.log(nAn); // > NaN
2. string
文字列タイプは、テキストデータを表すために使用されます.
JavaScriptの文字列は可変ではありません.
文字列が生成されると、その文字列は変更できません.
ただし、元の文字列から別の変更された文字列を作成できます.
例を挙げると理解しています.
ex)
let name = 'kang';
name = 'jiwon';
// 코드 첫 줄의 문자열 kang이 생성되었으므로 앞으로 kang은 재사용 x
// 변수 str은 문자열 ‘kang’을 가리키고 있다가
//문자열 ‘jiwon’을 가리키도록 변경되었다.
3. boolean
論理データ型、真または偽の値のみ
コード・セグメントを実行したり、繰り返しが必要な場合に使用します.
ex)
function findGreaterNum(num1, num2) {
if(num1 > num2) {
return "Big one";
} else if(num1 < num2) {
return "Big two";
} else if(num1 === num2) {
return "equal num" ;
}
}
const result = findGreaterNum(1,2);
console.log(result);
// 결과값으론 big two가 출력되었다.
// if 함수 안의 값이 true라면(= 조건이 맞다면)
// 해당 return 값을 돌려주겠다는 의미의 코드였다.
// 코드를 짜며 어디에 쓸 수 있을까 잠깐 고민해봤는데
// 웹 실행 시 다크 모드에 쓸 수 있겠다는 생각이 들었다.
4. undefined
未定義タイプの値は未定義の一意の値です
値が指定されていない変数は、未定義のデータ型です.
メソッドと宣言はundeffineも返します(評価する変数に値が指定されていない場合)
ex)
let k ;
console.log(k);// 변수 k에 대한 value가 없기 때문에 undefined 출력
5. null
nullタイプの値nullは一意です.
値が意図的に空であることを示します.
ブール演算では偽物と見なされる.
nullはNull、NULLなどとは異なります.(JS大文字小文字区別)
nullとundefinedの違い
未定義とは異なりnullは元のタイプ(元の値)です.
JavaScriptはこれを実装エラーと見なします.
未定義=nullはtrueです.
ただし、厳密にデータ型をチェックする一致演算子==を使用すると、
nullとundefinedのデータ型が異なるためfalseが出力されます
6. symbol
クラスまたはオブジェクトタイプ(objecttype)からの内部アクセスのみを許可
プライベートオブジェクト属性として使用される鍵.
ex)
// symbol은 개체에 대한 고유 식별자를 생성한다.
const symbol1 = Symbol('k');
const symbol2 = Symbol('k');
console.log(symbol1 === symbol2);
// false : 동일한 string을 작성해도 다른 symbol로 만들어짐
// string 이 같을 때 동일한 symbol 만들기
const gSymbol1 = Symbol.for('k');
const gSymbol2 = Symbol.for('k');
console.log(gSymbol1 === gSymbol2); // true
object / reference type
元のタイプ(Primitives)を除いて、残りの値(配列、関数、正規表現など)はオブジェクトです.
オブジェクトはプロセスを変更、追加、または削除できるため、可変値と呼ぶことができます.
let foo = {
val: 10
}
let bar = foo;
console.log(foo.val, bar.val); // 10 10
console.log(foo === bar); // true
bar.val = 20;
console.log(foo.val, bar.val); // 20 20
console.log(foo === bar); // true
let a = {}, b = {}, c = {}; // a, b, c는 각각 다른 빈 객체를 참조
console.log(a === b, a === c, b === c); // false false false
a = b = c = {}; // a, b, c는 모두 같은 빈 객체를 참조
console.log(a === b, a === c, b === c); // true true true
整理する
特徴を覚えなければならないが、例題をたくさん使うことに気づいた.
コードは絶対に暗記ではありません!
Reference
MDN
PoiemaWeb
25%
Dream coding
Reference
この問題について(データ型(datatype)), 我々は、より多くの情報をここで見つけました https://velog.io/@betterplaywon/데이터-타입data-typeテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol