> For the complete documentation index, see [llms.txt](https://doc.duaer.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://doc.duaer.com/zh/code/builtin/convenience.md).

# 在 Duaer 表达式里使用快捷方法

在 Duaer 表达式里用 $json 读当前项，用 $("节点名") 读前面的节点，用 $now 和 $if() 处理时间和条件。
## 当前项和前面的节点

- $json 是当前项的字段。$json.city 是其中的 city。
- $binary 是当前项上的文件。
- $("节点名").first() 取那个节点的第一项。last() 取最后一项。all() 取全部。
- $("节点名").item 取和当前输出对应的那一项。对应规则见[数据项在流程里怎么对应](/zh/data/data-mapping/data-item-linking.md)。
- $itemIndex 是当前项在这一批里的序号，从 0 开始。$runIndex 是这个节点第几次运行，也从 0 开始。
- $prevNode.name、$prevNode.outputIndex、$prevNode.runIndex 描述紧挨着的上一个节点。

## 时间、条件和空值

- $now 是当前日期时间。$today 是今天。格式化写成 $now.toFormat("yyyy-MM-dd")。细节见[在 Duaer 里用 Luxon 处理日期](/zh/code/cookbook/luxon.md)。
- $if(条件, 成立时的值, 不成立时的值) 按条件选一个值。三元写法 条件 ? 甲 : 乙 也可以。
- $ifEmpty(值, 默认值) 在值是 undefined、null、空字符串、空数组或空对象时返回默认值。

```
{{ $ifEmpty($json.city, "unknown") }}
```

## 这次执行、这条数字组织和变量

- $execution.id 是这次执行的编号。$execution.mode 是手动还是线上触发。$execution.customData 读写自定义执行数据。
- $workflow.id、$workflow.name、$workflow.active 是这条数字组织的编号、名字和是否激活。
- $vars.键名 读取[在 Duaer 里定义自定义变量](/zh/code/variables.md)。
## Questions

### 在 Duaer 里 $ifEmpty 把哪些值当成空？

在 Duaer 表达式里，$ifEmpty(值, 默认值) 在值是 undefined、null、空字符串、空数组或没有字段的对象时返回默认值；其他值原样返回。

### 在 Duaer 里怎么格式化当前时间？

在 Duaer 表达式里，$now 是当前时间，$today 是今天。写成 {{ $now.toFormat("yyyy-MM-dd") }}。

