# Object.each

## 功能

遍历对象键值并执行回调。

## 语法

```bt
object.each(callback)
```

## 参数

| 参数 | 类型 | 必填 | 默认值 | 说明 |
| ------ | ------ | ------ | ------ | ------ |
| callback | Fn | 否 | Empty | 回调签名为 fn(value, key, current)。 |

## 返回值

| 类型 | 说明 |
| ------ | ------ |
| Object | 返回原对象，便于继续链式调用。 |

## 返回对象字段

`each()` 返回调用它的同一个对象引用。字段名和值保持调用结束时原对象的实际状态；回调中新增、修改或删除字段会反映在返回对象中。

## 示例

```bt
user = {name: 'BT', lang: 'Rust'}
keys = []
user.each(fn(value, key) { keys.push(key) })

// 输出：["name","lang"]
echo(keys)
```

## 注意事项

- 遍历时使用对象当前内容的浅拷贝，回调修改对象不会影响本轮已取出的遍历项。
