1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

[JavaScript] データ型とリテラル

Last updated at Posted at 2024-10-28

環境

MacBook Pro (2.3 GHz 8コアIntel Core i9)
macOS 14.0(23A344)
Homebrew 4.3.8
gh 2.52.0

目次

データ型

JavaScriptは動的型付け言語に分類される言語であるため、静的型付け言語のような変数の型はありません。しかし、文字列、数値、真偽値といった値の型は存在します。これらの値の型のことをデータ型と呼びます。

データ型とリテラル

プリミティブ型

プリミティブ型(基本型)は、真偽値や数値などの基本的な値の型のことです。 プリミティブ型の値は、一度作成したらその値自体を変更できないというイミュータブル(immutable)の特性を持ちます。

データ型とリテラル

真偽値(Boolean) truefalse
数値(Number) 1231.234
巨大な整数(BigInt) 9007199254740992n
文字列(String) "JavaScript"
undefined 値が未定義であること意味するデータ型
null 値が存在しないことを意味するデータ型
シンボル(Symbol) 一意で不変な値のデータ型
typeof演算子でデータ型(値の型)を調べた結果
console.log(typeof true);// => "boolean"
console.log(typeof 42); // => "number"
console.log(typeof 9007199254740992n); // => "bigint"
console.log(typeof "JavaScript"); // => "string"
console.log(typeof Symbol("シンボル"));// => "symbol"
console.log(typeof undefined); // => "undefined"
console.log(typeof null); // => "object"

オブジェクト

プリミティブ型ではないものをオブジェクト(複合型)と呼び、 オブジェクトは複数のプリミティブ型の値またはオブジェクトからなる集合です。 オブジェクトは、一度作成した後もその値自体を変更できるためミュータブル(mutable)の特性を持ちます。 オブジェクトは、値そのものではなく値への参照を経由して操作されるため、参照型のデータとも言います。

データ型とリテラル

オブジェクト {name1 = "Alpha", name2 = "Beta"}
配列 ["Alpha", "Beta"]
関数 function () {};
クラス
正規表現
Date
typeof演算子でデータ型(値の型)を調べた結果
console.log(typeof { name1 = "Alpha", name2 = "Beta" }); // => "object"
console.log(typeof [ "Alpha", "Beta" ]); // => "object"
console.log(typeof function () {}); // => "function"

リテラル

プリミティブ型の値や一部のオブジェクトは、リテラルを使うことで簡単に定義できるようになっています。
リテラルとはプログラム上で数値や文字列など、データ型の値を直接記述できるように構文として定義されたものです。 たとえば、""で囲んだ範囲が文字列リテラルで、これは文字列型のデータを表現しています。

データ型とリテラル

プリミティブ型

真偽値(Boolean)

  • 真偽値には、truefalseのリテラルがあります。
    true; // => true
    false; // => false
    

数値(Number)

  • 数値には、42のような整数リテラルと3.14159のような浮動小数点数リテラルがあります。
    • 整数リテラル
    console.log(1); // => 1
    console.log(10); // => 10
    console.log(255); // => 255
    
    • 浮動小数点数リテラル
    .123; // => 0.123
    

巨大な整数(BigInt)

  • ES2020ではBigIntという新しい整数型のデータ型とリテラルが追加されました。
  • BigIntでは2^53-1(9007199254740991)よりも大きな整数を正しく表現できます。
  • BigIntリテラルは、数値の後ろにnをつけます。
    console.log(1n); // => 1n
    // 2^53-1より大きな値も扱える
    console.log(9007199254740992n); // => 9007199254740992n
    

文字列(String)

null

  • nullリテラルはnull値を返すリテラルです。
  • nullは「値がない」ということを表現する値です。
    foo;// "ReferenceError: foo is not defined"
    const foo = null;
    console.log(foo); // => null
    

オブジェクト

参考リンク

1
0
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?