# Key 属性

### 为什么需要 key 属性？

**key 让兄弟元素之间都有一个自己的唯一标识。**

React 依靠 key 来做 diff 算法。

比如说：这当一组元素中某一个元素被删除时，通过唯一的 key 属性，React 能够正确的分辨它们。

> key 属性并不会作为 props 传入给子组件，如果需要，请显式的传入。

### 如何选择 key 的取值？

* key 的取值只需要保证在兄弟节点之间保持唯一性即可，而不需要保证全局唯一。
* 尽量不要选择列表的 index 来作为 key。也不要使用随机值。
