CH01-L01 · základy

Výrazy a hodnoty

Spustíte samostatný výraz CEL aj výraz s externými údajmi JSON.

Všeobecný CELSpustiteľné tuZdokumentované
Čo sa naučím?

Viete rozlíšiť lokálnu väzbu v CEL od premennej poskytnutej cez JSON.

Kde si to vyskúšam?

Priamo nižšie v skúšobnom prostredí prehliadača.

Čo mám urobiť?

Spustite oba režimy, porovnajte pôvod ich hodnôt a potom dokončite úlohu.

Vyskúšajte CEL · pilot v prehliadači

Vyskúšajte oba spôsoby zadania hodnôt

Lokálne hodnoty môžete definovať v jednom výraze CEL alebo môžete premenné zadať ako vstup JSON. Všetko sa vykonáva vo vašom prehliadači.

Pilotná podmnožina CEL
Jeden samostatný výraz CELFunkcia cel.bind() priradí hodnote lokálny názov a vráti výsledok posledného výrazu.

cel.bind()cel.bind() je voliteľné oficiálne rozšírenie. Nie je súčasťou jadra jazyka CEL a hostiteľská aplikácia ho nemusí podporovať.

Tip: výraz spustíte aj klávesmi Ctrl/⌘ + Enter.
Výsledok

Aktívny príklad vyhodnotíte tlačidlom Spustiť CEL.

Rozsah pilotu: literály, explicitné konverzie, lokálne premenné vytvorené pomocou cel.bind(), premenné z JSON, zoznamy, mapy, prítomnosť, kolekčné makrá, základné kontroly reťazcov, časové hodnoty, aritmetika, porovnávanie, logika a podmienený operátor.

Čo budete robiť

Pripravený výraz spustíte v cvičisku vyššie, budete meniť vždy jeden vstup a vysvetlíte výsledok. Začnite v režime Iba CEL a potom rovnaké pravidlo zopakujte v režime CEL + JSON.

Ako to funguje

Program CEL je jeden výraz, ktorý vráti jednu hodnotu. V prvej záložke priradí cel.bind() lokálny názov hodnote iba počas vyhodnotenia posledného argumentu. V druhej záložke poskytne rovnaký názov hostiteľská aplikácia cez JSON. Pravidlo používa name v oboch prípadoch rovnako; mení sa iba zdroj hodnoty.

Prečítajte pripravený príklad

Pravidlo v režime CEL + JSON je:

'Hello, ' + name + '!'

Jeho vstup je:

{
  "name": "Maya"
}

Záložka Iba CEL obsahuje hodnoty aj pravidlo v jednom výraze. Povolené rozšírenie cel.bind() udrží každý názov lokálny v jeho poslednom argumente.

Vyhodnotenie krok za krokom

  1. Premenná name dostane reťazec Maya.
  2. Operátor + spojí tri reťazce.
  3. Výraz vráti "Hello, Maya!".

Vaša úloha

  1. Spustite režim Iba CEL a skontrolujte výsledok.
  2. Nahraďte Maya svojím menom a výraz spustite znova.
  3. Prepnite na CEL + JSON, urobte rovnakú zmenu v JSON a spustite výraz.

Očakávané pozorovanie: Ak oba režimy dostanú rovnaké meno, vrátia rovnaký pozdrav.

Častá chyba

Odstránenie definície name nevytvorí prázdny reťazec. Vyhodnotenie zlyhá, pretože CEL chýbajúce hodnoty neodhaduje.

Zobraziť vysvetlenie

V záložke CEL + JSON. Výraz obsahuje pravidlo a JSON obsahuje vstup.

Kontrolná otázka

V ktorej záložke sa vstupné údaje menia mimo výrazu CEL?

Hlavná myšlienka

Výraz a jeho vstup sú dve samostatné veci. Hodnota môže byť lokálna alebo dodaná hostiteľom, ale každý použitý názov musí byť definovaný.

Zdroje

  • CEL-DEV — oficiálny prehľad CEL.
  • CEL-LANG — oficiálna definícia jazyka CEL.
  • CEL-GO-BIND — oficiálna dokumentácia voliteľného rozšírenia cel.bind() použitého v samostatnej záložke.