JavaScript マップ
今回はマップをやります。セット、ゲット、文字列変換
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>JavaScriptのテストページ</title>
<script type="text/javascript">
// 空のマップ
const map1 = new Map();
// ゲット、セット
map1.set('aaa', 'bbb');
alert(map1.get('aaa'));
// 初期値がセットされたマップ
const map2 = new Map([['a1', 'b1'], ['a2', 'b2']]);
// マップ → 文字列
const str = JSON.stringify(Array.from(map2.entries()));
alert(str);
// 文字列 → マップ
const map3 = new Map(JSON.parse(str));
alert(map3.get('a1'));
</script>
</head>
<body>
</body>
</html>
ループ
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>JavaScriptのテストページ</title>
<script type="text/javascript">
// 空のマップ
const map1 = new Map();
map1.set('aaa', 'bbb');
// map1.set('ccc', 'ddd');
for (const [key, value] of map1) {
alert(key + ' = ' + value);
}
for (const key of map1.keys()) {
alert(key);
}
for (const value of map1.values()) {
alert(value);
}
map1.forEach(function (value, key) {
alert(key + ' = ' + value);
})
</script>
</head>
<body>
</body>
</html>
その他
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>JavaScriptのテストページ</title>
<script type="text/javascript">
// 空のマップ
const map1 = new Map();
map1.set('aaa', 'bbb');
map1.set('ccc', 'ddd');
// 指定キーが含むか確認
alert(map1.has('aaa'));
// 指定キーを削除
map1.delete('aaa');
// マップサイズを取得
alert(map1.size);
// マップの内容を全削除
map1.clear();
</script>
</head>
<body>
</body>
</html>
ページのトップへ戻る