teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

WeakMap

2017/12/27 14:37

投稿

think49
think49

スコア18194

answer CHANGED
@@ -42,4 +42,32 @@
42
42
  output();
43
43
  ```
44
44
 
45
+ ### WeakMap
46
+
47
+ 下記コードは簡単な例ですが、`WeakMap` はキーとなる変数のスコープが get() のスコープに直結する為、**スコープ制御がしやすいメリット**があります。
48
+
49
+ ```JavaScript
50
+ 'use strict';
51
+ var wm = new WeakMap;
52
+
53
+ function input (key) {
54
+ var a = 1;
55
+ var b = 2;
56
+
57
+ wm.set(key, {a: a, b: b});
58
+ }
59
+
60
+ function output () {
61
+ var obj = {}, inputObject;
62
+
63
+ input(obj);
64
+ inputObject = wm.get(obj);
65
+
66
+ console.log(inputObject.a);
67
+ console.log(inputObject.b);
68
+ }
69
+
70
+ output();
71
+ ```
72
+
45
73
  Re: moscow3 さん