zheng 4 dagen geleden
bovenliggende
commit
f99137ab24
2 gewijzigde bestanden met toevoegingen van 45 en 1 verwijderingen
  1. 11 1
      js高级/22.Map.html
  2. 34 0
      js高级/23.proxy.html

+ 11 - 1
js高级/22.Map.html

@@ -8,7 +8,17 @@
 <body>
     <script>
         /**
-         * Map 键值对集合  
+         * Map 键值对集合
+         * Map() 类似于对象 键值对中的对象
+         * 可以使用扩展运算符 for..of
+         * size 返回键值对中的元素个数
+         * set() 往集合中添加键值对
+         * get() 获取集合中的键值
+         * has() 查找Map集合中是否包含所要查找的属性 返回值为布尔值
+         * clear() 清空集合中的所有值 
+         * entries() 键值对
+         * keys() 键值对中的下标
+         * values() 键值对中的值  
         */
         const m = new Map([
             ["name","Lucy"],

+ 34 - 0
js高级/23.proxy.html

@@ -0,0 +1,34 @@
+<!DOCTYPE html>
+<html lang="en">
+
+<head>
+    <meta charset="UTF-8">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <title>Document</title>
+</head>
+
+<body>
+    <script>
+        // proxy 代理 在对象外面包了一层拦截器
+        // const xxx = new Proxy(目标对象,拦截器)
+        const obj = { name: "图图", age: 3 };
+        const newProxy1 = new Proxy(obj, {
+            get(target,key) {
+                console.log(target,'target');
+                console.log(key,'key')
+                return target[key]
+             },
+            set(target,key,value) {
+                console.log(target,'target1');
+                console.log(key,'key1')
+                console.log(value,'value1');
+                target[key] = value;
+                return true;
+             }
+        });
+        newProxy1.name = '喜羊羊';
+        console.log(newProxy1.name)
+    </script>
+</body>
+
+</html>