Skip to content

Commit

Permalink
feat: 初始化
Browse files Browse the repository at this point in the history
  • Loading branch information
张东 authored and 张东 committed Aug 6, 2024
1 parent 7a3aad0 commit a3f29b7
Show file tree
Hide file tree
Showing 5 changed files with 34 additions and 4 deletions.
4 changes: 4 additions & 0 deletions .vitepress/config.mts
Original file line number Diff line number Diff line change
Expand Up @@ -150,6 +150,10 @@ export default defineConfig({
text: "network",
link: "/browser/devtool/network",
},
{
text: "性能监控",
link: "/browser/devtool/monitor",
},
],
},
],
Expand Down
Binary file added browser/devtool/imgs/image1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
7 changes: 7 additions & 0 deletions browser/devtool/monitor.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
---
layout: doc
outline: deep
---
效果监控面板会显示一个时间轴,以图表的方式实时估计效果指标。点击某个指标即可将其显示或隐藏。然后,观察图表在您与应用交互时的变化情况。

![alt text](./imgs/image1.png)
27 changes: 23 additions & 4 deletions javascript/grammar/DescriptionOfDataType.md
Original file line number Diff line number Diff line change
Expand Up @@ -420,8 +420,8 @@ Map 使用 SameValueZero 算法来比较键是否相等。它和严格等于 ===
这个算法不能被改变或者自定义。
:::
### Map 迭代
* map.keys() —— 遍历并返回一个包含所有键的可迭代对象
* map.values() —— 遍历并返回一个包含所有值的可迭代对象
* map.keys() —— 遍历并返回一个包含所有键的`可迭代对象`
* map.values() —— 遍历并返回一个包含所有值的`可迭代对象`
* map.entries() —— 遍历并返回一个包含所有实体 [key, value] 的可迭代对象,for..of 在默认情况下使用的就是这个。

除此之外,Map 有内建的 forEach 方法
Expand Down Expand Up @@ -528,8 +528,27 @@ john = null; // 覆盖引用
// 我们可以通过 array[0] 获取到它
```
:::tip :rocket:
但是Map可以用对象当成键,如果把这个对象变成null,那岂不是永远都访问不到这个键对应的值,这种情况下这个值不会被垃圾回收,但是weakMap会回收
WeakMap 的键必须是对象,不能是原始值

所以WeakMap 的键必须是对象,不能是原始值
类似的,如果我们使用对象作为常规 Map 的键,那么当 Map 存在时,该对象也将存在。它会占用内存,并且不会被(垃圾回收机制)回收。
```js
let john = { name: "John" };

let map = new Map();
map.set(john, "...");

john = null; // 覆盖引用

// john 被存储在了 map 中,
// 我们可以使用 map.keys() 来获取它
```
:::


如果我们在 weakMap 中使用一个对象作为键,并且没有其他对这个对象的引用 —— 该对象将会被从内存(和map)中自动清除。

WeakMap 不支持迭代以及 keys(),values() 和 entries() 方法。所以没有办法获取 WeakMap 的所有键或值。

:::tip :rocket:
vue中使用它作为建立data与副作用的映射
:::
Binary file added public/ccc.mp4
Binary file not shown.

0 comments on commit a3f29b7

Please sign in to comment.