皆さんは小学校の国語の時間にひらがなやカタカナ、漢字を習うと思います。算数の授業では1,2,3等の整数や2.4、5.3等の少数を習うと思います。また、2025/1/1や2025年5月1日など日付や8:59や13:45などの時間も日常生活でよく使うことでしょう。

パソコンの世界では上記のような情報を全て0または1で表します。2進数とかビット演算で出てきますね。
(40代である私は高校の数学の時間に習ったような記憶があるのですが、現在は高校の情報の授業で学ぶようですね。)
例えば、数字の5を2進数で表すと「101」となります。また「H」という文字はASCII(アスキー)コードという文字を数字で表現するコードで72なのですが、これを2進数で「01001000」と表現されます。つまり、「01001000」だけでは数字の「72」なのか、文字の「H」なのか分かりません。そこで、この0と1で表されたものが、どのような情報なのかをパソコンに教えるのがデータ型です。

数値

整数、少数、百分率、分数、負の数など数値にもいろいろありますが、プログラミングの世界では整数と少数、負の数を計算に使います。使う言語によって違いがあるのですが、整数はinteger型やint型と呼びます。少数は日本語では浮動小数点と呼ぶ、float型、double型などがあります。

浮動小数点は天文学的に大きな数字から小さな数字まで表現できますが、計算の途中で誤差が生じてしまいます。(丸め誤差と言います)そのため、誤差が生じては困る場合(お金の計算など)はdecimal型というものを使います。

integer型、int型例) 1、52、−450 など
float型、dobule型例) 134×10^2、4564×10^-3 など
decimal型例) 1000.2、45.565 など

文字列

先ほど紹介したASCIIコード、Webの世界ではUTF-8という文字コードにいろいろ種類がありますが、いずれも文字に対して、一意の数字を対応させて表現します。string型やそれよりも長いtext型というものがあります。

日付・時刻

日付や時刻は10進法の数値とは異なり、60秒で1分、60分で1時間というふうに60進法です。また、24時間で1日、365日で1年ですね。なので、10進法の足し算や引き算とは異なります。そのため専用のデータがあります。data型やdatetime型があります。

真偽値

条件分岐で記事で紹介したif文ですが、条件が成り立つというのは真(true)である状態で、条件が成り立たないというのは偽(false)である状態と言います。例えば下記のようなものがあった場合、

const a=4;
const b=2;
if(a+b>5){
  console.log("true");
}else{
  console.log("false");
}

a+bは6で5より大きいという条件が成り立つ(true)なので、条件が成り立つ場合の処理console.log(“true”)が実行されます。ここで、a+b>5をconsole.log()で評価された値を見てみましょう

const a=4;
const b=2;
console.log(a+b>5);

trueと表示されましたよね?これが真偽値型です。一般的にはboolean型やbool型と呼ばれます。

まとめ

ここで紹介したデータ型以外にもあるのですが、プログラミング言語によって呼び方が異なったり、これらのデータ型の派生であったりします。どのような計算や処理をするかによってどのデータ型を使うのかが重要になってきます。

このデータ型を理解していないと自分が思った通りにならなかったり、間違った処理が実行されてしまうので、注意が必要なのですが、その話はまた別の機会にでも

私もこのオンライン学習で学びました!

IT資格の人気オンラインコース