JavaScript/グローバルオブジェクト
JavaScriptのグローバルオブジェクトは、ECMAScript仕様に従って、さまざまなデータ型や機能を提供します。以下に、各グローバルオブジェクトをアルファベット順に紹介し、簡単なコード例を示します。
Array
編集Arrayは、配列の操作を行うためのオブジェクトです。
- 例
let arr = [1, 2, 3]; console.log(arr.length); // 3
ArrayBuffer
編集ArrayBufferは、固定長の生バイナリデータを表現するためのオブジェクトです。
- 例
let buffer = new ArrayBuffer(16); let view = new Int32Array(buffer); view[1] = 42; console.log(view[1]); // 42
BigInt
編集BigIntは、任意精度の整数を表す型です。
- 例
let bigIntNum = 1234567890123456789012345678901234567890n; console.log(bigIntNum); // 1234567890123456789012345678901234567890n
BigInt64Array
編集BigInt64Arrayは、BigInt型の64ビット整数値を格納する配列です。
- 例
let buffer = new ArrayBuffer(8); let bigIntArray = new BigInt64Array(buffer); bigIntArray[0] = 1234567890123456789n; console.log(bigIntArray[0]); // 1234567890123456789n
BigUint64Array
編集BigUint64Arrayは、符号なし64ビット整数のBigInt型を格納する配列です。
- 例
let buffer = new ArrayBuffer(8); let bigUintArray = new BigUint64Array(buffer); bigUintArray[0] = 1234567890123456789n; console.log(bigUintArray[0]); // 1234567890123456789n
Boolean
編集Booleanは、真偽値を表現する型です。
- 例
let isTrue = true; console.log(isTrue); // true
DataView
編集DataViewは、ArrayBufferの内容を効率的に読み書きするためのインターフェースです。
- 例
let buffer = new ArrayBuffer(8); let dataView = new DataView(buffer); dataView.setInt8(0, 42); console.log(dataView.getInt8(0)); // 42
Date
編集Dateは、日付と時刻を扱うためのオブジェクトです。
- 例
let now = new Date(); console.log(now); // 現在の日付と時刻
decodeURI
編集decodeURIは、エンコードされたURIコンポーネントをデコードします。
- 例
let encoded = encodeURI("https://example.com?name=John&Doe"); console.log(decodeURI(encoded)); // https://example.com?name=John&Doe
decodeURIComponent
編集decodeURIComponentは、エンコードされたURIの一部をデコードします。
- 例
let encoded = encodeURIComponent("name=John&Doe"); console.log(decodeURIComponent(encoded)); // name=John&Doe
encodeURI
編集encodeURIは、URIをエンコードします。
- 例
let uri = "https://example.com?name=John Doe"; console.log(encodeURI(uri)); // https://example.com?name=John%20Doe
encodeURIComponent
編集encodeURIComponentは、URIのコンポーネント(パラメータなど)をエンコードします。
- 例
let component = "name=John Doe"; console.log(encodeURIComponent(component)); // name%3DJohn%20Doe
Error
編集Errorは、JavaScriptのエラーを表すオブジェクトです。
- 例
try { throw new Error("Something went wrong"); } catch (e) { console.log(e.message); // Something went wrong }
eval
編集evalは、文字列として渡されたJavaScriptコードを実行します。
- 例
let x = 10; eval("x = x + 1"); console.log(x); // 11
EvalError
編集EvalErrorは、eval関数に関連するエラーを表します。
- 例
try { throw new EvalError("Eval error"); } catch (e) { console.log(e.message); // Eval error }
Float32Array
編集Float32Arrayは、32ビット浮動小数点数を格納する配列です。
- 例
let arr = new Float32Array(2); arr[0] = 3.14; console.log(arr[0]); // 3.14
Float64Array
編集Float64Arrayは、64ビット浮動小数点数を格納する配列です。
- 例
let arr = new Float64Array(2); arr[0] = 3.14159; console.log(arr[0]); // 3.14159
Function
編集Functionは、JavaScriptの関数を表現するオブジェクトです。
- 例
let add = new Function('a', 'b', 'return a + b'); console.log(add(1, 2)); // 3
globalThis
編集globalThisは、グローバルオブジェクトを指し示します。
- 例
console.log(globalThis); // グローバルオブジェクト
Infinity
編集Infinityは、無限大を表す定数です。
- 例
console.log(Infinity); // Infinity
Int16Array
編集Int16Arrayは、16ビット符号付き整数を格納する配列です。
- 例
let arr = new Int16Array(2); arr[0] = 32767; console.log(arr[0]); // 32767
Int32Array
編集Int32Arrayは、32ビット符号付き整数を格納する配列です。
- 例
let arr = new Int32Array(2); arr[0] = 2147483647; console.log(arr[0]); // 2147483647
Int8Array
編集Int8Arrayは、8ビット符号付き整数を格納する配列です。
- 例
let arr = new Int8Array(2); arr[0] = 127; console.log(arr[0]); // 127
Intl
編集Intlは、国際化に関連する機能を提供するオブジェクトです。
- 例
let number = 1234567.89; let formatter = new Intl.NumberFormat('en-US'); console.log(formatter.format(number)); // 1,234,567.89
isFinite
編集isFiniteは、引数が有限数かどうかを判定します。
- 例
console.log(isFinite(123)); // true console.log(isFinite(Infinity)); // false
isNaN
編集isNaNは、引数がNaNかどうかを判定します。
- 例
console.log(isNaN(123)); // false console.log(isNaN(NaN)); // true
JSON
編集JSONは、JSON形式のデータを操作するためのオブジェクトです。
- 例
let obj = { name: "John", age: 30 }; let jsonString = JSON.stringify(obj); console.log(jsonString); // {"name":"John","age":30}
Map
編集Mapは、キーと値のペアを格納するコレクションです。
- 例
let map = new Map(); map.set("name", "John"); console.log(map.get("name")); // John
Math
編集Mathは、数学的な定数や関数を提供するオブジェクトです。
- 例
console.log(Math.PI); // 3.141592653589793 console.log(Math.random()); // 0から1の間のランダムな値
NaN
編集NaNは、数値として解釈できない値を表す定数です。
- 例
console.log(NaN == NaN); // false
Number
編集Numberは、数値を表すためのオブジェクトです。
- 例
let num = 123; console.log(Number.isInteger(num)); // true
Object
編集Objectは、JavaScriptの基本的なオブジェクト型です。
- 例
let obj = { name: "John", age: 30 }; console.log(obj.name); // John
parseFloat
編集parseFloatは、文字列を浮動小数点数に変換します。
- 例
let num = parseFloat("3.14"); console.log(num); // 3.14
parseInt
編集parseIntは、文字列を整数に変換します。
- 例
let num = parseInt("123"); console.log(num); // 123
Promise
編集Promiseは、非同期操作の結果を表現するオブジェクトです。
- 例
let promise = new Promise((resolve, reject) => { resolve("Success"); }); promise.then(result => console.log(result)); // Success
Proxy
編集Proxyは、オブジェクトの操作をトラップするためのオブジェクトです。
- 例
let target = { message: "Hello" }; let handler = { get: function(target, prop) { return prop in target ? target[prop] : `Property ${prop} not found`; } }; let proxy = new Proxy(target, handler); console.log(proxy.message); // Hello
RangeError
編集RangeErrorは、範囲外の値が指定された場合のエラーです。
- 例
try { throw new RangeError("Out of range"); } catch (e) { console.log(e.message); // Out of range }
ReferenceError
編集ReferenceErrorは、未定義の変数を参照した場合のエラーです。
- 例
try { console.log(nonExistentVar); } catch (e) { console.log(e.message); // nonExistentVar is not defined }
Reflect
編集Reflectは、オブジェクトの操作を行うためのメソッドを提供するオブジェクトです。
- 例
let obj = { name: "John" }; console.log(Reflect.has(obj, "name")); // true
RegExp
編集RegExpは、正規表現を表現するオブジェクトです。
- 例
let regex = /hello/; console.log(regex.test("hello world")); // true
Set
編集Setは、重複しない値を格納するコレクションです。
- 例
let set = new Set(); set.add(1); set.add(2); console.log(set.has(1)); // true
String
編集Stringは、文字列を表すオブジェクトです。
- 例
let str = "Hello"; console.log(str.length); // 5
Symbol
編集Symbolは、一意の識別子を作成するためのオブジェクトです。
- 例
let sym = Symbol("description"); console.log(sym); // Symbol(description)
SyntaxError
編集SyntaxErrorは、構文エラーを表します。
- 例
try { eval("var a = "); } catch (e) { console.log(e.message); // Unexpected end of input }
TypeError
編集TypeErrorは、不正な型にアクセスした場合のエラーです。
- 例
try { null.foo(); } catch (e) { console.log(e.message); // Cannot read properties of null (reading 'foo') }
Uint16Array
編集Uint16Arrayは、16ビット符号なし整数を格納する配列です。
- 例
let arr = new Uint16Array(2); arr[0] = 65535; console.log(arr[0]); // 65535
Uint32Array
編集Uint32Arrayは、32ビット符号なし整数を格納する配列です。
- 例
let arr = new Uint32Array(2); arr[0] = 4294967295; console.log(arr[0]); // 4294967295
Uint8Array
編集Uint8Arrayは、8ビット符号なし整数を格納する配列です。
- 例
let arr = new Uint8Array(2); arr[0] = 255; console.log(arr[0]); // 255
Uint8ClampedArray
編集Uint8ClampedArrayは、0〜255の範囲に制限された8ビット符号なし整数を格納する配列です。
- 例
let arr = new Uint8ClampedArray(2); arr[0] = 300; console.log(arr[0]); // 255
undefined
編集undefinedは、未定義の値を表すプリミティブ型です。
- 例
let x; console.log(x); // undefined
URIError
編集URIErrorは、URI操作に関するエラーを表します。
- 例
try { decodeURIComponent('%'); } catch (e) { console.log(e.message); // URI malformed }
WeakMap
編集WeakMapは、ガベージコレクションに対応したキーと値のペアを格納するコレクションです。
- 例
let wm = new WeakMap(); let obj = {}; wm.set(obj, "value"); console.log(wm.get(obj)); // value
WeakSet
編集WeakSetは、ガベージコレクションに対応したユニークなオブジェクトのみを格納するコレクションです。
- 例
let ws = new WeakSet(); let obj = {}; ws.add(obj); console.log(ws.has(obj)); // true