# field.meta..eval Javascript-Kontext

Zuätzlich zu den allgemeinen und Kollektions-spezifischen Variablen, die im Javascript-Kontext der `eval`-Eigenschaften unterhalb des zur Verfügung stehen, gibt es noch folgende Variablen unterhalb des `field.meta`-Objektes für die Evaluierung:

| Variable | Datentyp | Bedeutung |
| --- | --- | --- | --- | --- |
| `$field` TODO | object | Das aktuelle Feld-Objekt |
| `$method` | `"post"`/`"put"` | `"put"` bedeuted, dass der Datensatz gerade in Bearbeitung ist, `"post"` = Datensatz soll angelegt werden |
| `$this` | any | Der aktuelle Wert des Feldes |
| `$` | object | Das gesamte Objekt des Dokuments |
| `$parent` | object oder array | Der Wert des Elternknotens zum aktuellen Feld |
| `$stack` | array | Der Stack bis zum Ursprung des gesamten Objekts |

## Der Stack

Um die Abhängigkeiten zu bestimmten Werten ausdrücken zu können (z.B. in `meta.dependsOn.eval`), sind die Variablen `$this`, `$`, `$parent` und `$stack` verfügbar.

Folgendes Beispiel eines Datensatzes verdeutlicht die Belegung, während die Maske zum Editieren im *tibi-admin* geöffnet ist:


```json
{
    "title": "Mein Datensatz",
    "meta": {
        "keywords": [
            {
                "key": "pla",
                "description": "Ah Plah"
            },
            {
                "key": "blup",
                "description": "Buh Blup"
            }
        ]
    }
}
```

wobei wir den `"key": "pla"` betrachten, wären die Inhalte der Variablen folgende:

`$this`:

plah

`$parent` und `$stack[0]`:

```json
{
    "key": "pla",
    "description": "Ah Plah"
}
```

`$stack[1]`:

```json
[
    {
        "key": "pla",
        "description": "Ah Plah"
    },
    {
        "key": "blup",
        "description": "Buh Blup"
    }
]
```

`$stack[2]`:

```json
{
    "keywords": [
        {
            "key": "pla",
            "description": "Ah Plah"
        },
        {
            "key": "blup",
            "description": "Buh Blup"
        }
    ]
}
```

`$stack[3]`, `entry` und  `$`:

```json
{
    "title": "Mein Datensatz",
    "meta": {
        "keywords": [
            {
                "key": "pla",
                "description": "Ah Plah"
            },
            {
                "key": "blup",
                "description": "Buh Blup"
            }
        ]
    }
}
```
