Open6

わかっていそうでわかっていない系

あじフライあじフライ

Location

https://developer.mozilla.org/ja/docs/Web/API/Location

雑にいうと

・現在表示されてるページのURLに関する情報が色々入ってるオブジェクト

プロパティ

現在のページがhttp://localhost:4321/test?search/#aboutの場合

プロパティ
Location.href 'http://localhost:4321/test?search/#about/'
Location.origin 'http://localhost:4321'
Location.protocol 'http:'
Location.host 'localhost:4321'
Location.hostname 'localhost'
Location.port '4321'
Location.pathname '/test'
Location.search '?search/'
Location.hash '#about/'

メソッド

メソッド 説明
Location.assign() 指定したURLに遷移(遷移後は閲覧履歴にも残る)
Location.replace() 指定したURLに遷移(遷移後は閲覧履歴に残らない)
Location.reload() 現在のURLを再読込
Location.toString() 現在のURLを文字列で取得
あじフライあじフライ

History

https://developer.mozilla.org/ja/docs/Web/API/History

雑にいうと

・ブラウザの履歴に関する情報が色々入ってるオブジェクト

プロパティ

プロパティ 説明
length 履歴に含まれる要素の数(現在のページを含む)
scrollRestoration 履歴を使用した遷移時にスクロール位置を復元するか
state pushState()replaceState()で挿入したstateオブジェクト(履歴ごとに保存できるメモみたいなもの)を参照

メソッド

メソッド 説明
back() 履歴の一つ前のページへ移動(ブラウザの戻るボタンと同じ挙動)
forward() 履歴の一つ次のページへ移動(ブラウザの次へボタンと同じ挙動
go() 現在のページからの相対位置で識別される履歴に遷移(go(1)なら次、go(-1)なら前)
pushState() 指定されたデータを履歴に追加
replaceState() 既存の履歴を指定されたデータに置き換える
// 'unused'は省略できないので空値を指定
window.history.pushState(state, unused, url);
window.history.replaceState(state, unused, url)
あじフライあじフライ

URL

https://developer.mozilla.org/ja/docs/Web/API/URL

雑にいうと

・指定されたURLの解釈、構築、正規化、およびエンコードなどを行う時に呼び出すクラス
URL()コンストラクタに任意のURLを指定してアレコレする。

const url = new URL('http://aji:fry@localhost:4321/test?search/#about')

プロパティ

プロパティ
hash '#about'
host 'localhost:4321'
hostname 'localhost'
href 'http://localhost:4321/test?search/#about'
origin 'http://localhost:4321'
pathname '/test'
port '4321'
protocol 'http:'
search '?search/'
searchParams URLSearchParams.size: 1
username 'aji'
password 'fry'

静的メソッド

メソッド 説明
canParse() 指定されたURLが解析可能(有効)かどうか
createObjectURL() 指定されたバイナリデータからURLを生成
revokeObjectURL() createObjectURL()で生成されたURLを破棄
parse() 指定されたURLか有効な文字列かどうかを判定し、有効であればURLオブジェクトを生成(canParse()new URLの機能をあわせ持つ上位互換)
URL.canParse('http://localhost:4321/test/') // => true
URL.parse('http://localhost:4321/test/') // => URLオブジェクト
const objectURL = URL.createObjectURL(new Blob(['Hello, world!']) // => blob:http://localhost:4321/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
URL.revokeObjectURL(objectURL)

メソッド

メソッド 説明
toString() URLの文字列を返す
toJSON() URLの文字列を返す
あじフライあじフライ

URLSearchParams

https://developer.mozilla.org/ja/docs/Web/API/URLSearchParams

雑にいうと

・クエリ文字列の操作を行う際に呼び出すクラス
URLSearchParams()に任意のクエリ文字列を指定してアレコレする。

const url = new URL('http://aji:fry@localhost:4321/test?search/#about')
const params = new URLSearchParams(url.search) // => URLSearchParams.size: 1

プロパティ

new URLSearchParams('?foo=1&bar=2&baz=3')の場合

プロパティ
size 3

メソッド

メソッド 説明
append() 指定されたキー/値のペアをクエリパラメーターに追加
delete() クエリパラメーターから指定された値を削除
entries() URLSearchParamsオブジェクト内の全てのキー/値のペアをイテレーターオブジェクト形式で返す
keys() URLSearchParamsオブジェクト内の全てのキーをイテレーターオブジェクト形式で返す
values() URLSearchParamsオブジェクト内の全ての値をイテレーターオブジェクト形式で返す
forEach() URLSearchParamsオブジェクトを使って反復処理を行う
get() 指定された検索パラメーター(key)に関連付けられた最初の値(value)を返す
getAll() 指定された検索パラメーター(key)に関連付けられたすべての値(value)を配列として返す
has() 指定されたパラメーターが存在するかどうかの論理値を返す
set() 指定されたキーに対して指定された値を上書き
sort() URLSearchParamsオブジェクト内の全てのキー/値のペアをキーのUnicodeコードポイントに基づいて並べ替える
toString() URLSearchParamsオブジェクトをクエリ文字列として返す
const params = new URLSearchParams('?foo=1&bar=2&baz=3')
params.append('qux', '4') // => ?foo=1&bar=2&baz=3&qux=4
params.delete('qux') // => ?foo=1&bar=2&baz=3
params.forEach((value, key) => {
    console.log(key, value) // => foo: 1, bar: 2, baz: 3
})
params.get('foo') // => 1
params.has('foo') // => true
params.set('foo', '5') // => ?foo=5&bar=2&baz=3
params.sort() // => ?bar=2&baz=3&foo=5
あじフライあじフライ

Date

https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Date

雑にいうと

・現在の時刻を取得するオブジェクト
new Date()でDateオブジェクトを呼び出すことで現在の時刻を表す文字列を取得できる

静的メソッド

メソッド 説明
Date.now() 1970/1/1 00:00:00から現在までの経過時間(ミリ秒)
Date.parse() 日時を表す文字列をDate.now()に変換
Date.UTC() .UTC(year, month, day, hour, minute, second, millisecond)の形式で受け取った日時をDate.now()に変換
const now = Date.now() // => 1749194631265
const parse = Date.parse('2025-06-06') // => 1749168000000
const utc = Date.UTC(2025, 6, 6) // => 1749168000000

メソッド

ローカル(ホスト環境のタイムゾーン)

取得 設定
getFullYear() setFullYear()
getMonth() setMonth()
getDate() setDate()
getHours() setHours()
getMinutes() setMinutes()
getSeconds() setSeconds()
ミリ秒 getMilliseconds() setMilliseconds()
曜日 getDay() なし

UTC(世界標準時)

取得 設定
getUTCFullYear() setUTCFullYear()
getUTCMonth() setUTCMonth()
getUTCDate() setUTCDate()
getUTCHours() setUTCHours()
getUTCMinutes() setUTCMinutes()
getUTCSeconds() setUTCSeconds()
ミリ秒 getUTCMilliseconds() setUTCMilliseconds()
曜日 getUTCDay() なし

その他

メソッド 説明
toString() 指定したDateオブジェクトを文字列として返す
toISOString() 指定したDateオブジェクトをISO 8601形式で文字列として返す
toUTCString() 指定したDateオブジェクトをUTC形式で文字列として返す
toJSON() 指定したDateオブジェクトをUTC形式で文字列として返す
toDateString() 指定したDateオブジェクトの日付を文字列として返す
toTimeString() 指定したDateオブジェクトの時刻を文字列として返す
toLocaleString() 指定したDateオブジェクトをユーザーのロケール(言語・地域設定)に合わせた形式で返す
toLocaleDateString() 指定したDateオブジェクトの年月日をユーザーのロケール(言語・地域設定)に合わせた形式で返す
toLocaleTimeString() 指定したDateオブジェクトの時刻をユーザーのロケール(言語・地域設定)に合わせた形式で返す
valueOf() 1970/1/1 00:00:00から現在までの経過時間(ミリ秒)を返す。
[Symbol.toPrimitive]() 指定したDateオブジェクトの文字列または1970/1/1 00:00:00から現在までの経過時間(ミリ秒)を返す。
const date = new Date()
date.toString() // => Fri Jun 06 2025 19:19:07 GMT+0900 (日本標準時)
date.toISOString() // => 2025-06-06T10:19:07.413Z
date.toJSON() // => 2025-06-06T10:19:07.413Z
date.toDateString() // => Fri Jun 06 2025
date.toTimeString() // => 19:19:07 GMT+0900 (日本標準時)
date.toLocaleString() // => 2025/6/6 19:19:07
date.toLocaleDateString() // => 2025/6/6
date.toLocaleTimeString() // => 19:19:07
date.valueOf() // => 1749205147413
date[Symbol.toPrimitive]('string') // => Fri Jun 06 2025 19:19:07 GMT+0900 (日本標準時)
date[Symbol.toPrimitive]('number') // => 1749205147413