Materi
Percabangan memilih jalur berdasarkan isi data: pesanan besar perlu persetujuan, pesanan dalam kota diantar sendiri, sisanya dikirim lewat ekspedisi. Choice state di Step Functions memperlihatkan aturan mainnya dengan jelas. Aturan di field Choices diperiksa berurutan, dan alur pindah ke langkah milik aturan pertama yang bernilai benar. Aturan sesudahnya tidak diperiksa lagi.
Field Default menentukan tujuan bila tidak ada aturan yang benar. Dokumentasinya mencatat bahwa tanpa Default, Choice yang tidak menemukan aturan cocok membuat eksekusi gagal. Karena itu setiap percabangan punya cabang bawaan yang disengaja, walaupun isinya hanya menandai data untuk diperiksa orang.
// Pendaftaran kursus: aturan diperiksa dari atas, yang pertama benar dipakai.
const aturan = [
{ kondisi: (d) => !(d.sesi > 0), ke: "tolak" },
{ kondisi: (d) => d.sesi >= 10, ke: "kelas-privat" },
{ kondisi: (d) => d.sesi >= 4, ke: "kelas-reguler" },
];
const bawaan = "kelas-coba";
// { sesi: 12 } -> kelas-privat { sesi: 5 } -> kelas-reguler
// { sesi: 2 } -> kelas-coba { sesi: 0 } -> tolakUrutan aturan menentukan hasil. Aturan yang lebih sempit ditulis di atas aturan yang lebih luas: total di atas satu juta diperiksa sebelum total di atas seratus ribu. Validasi input juga sebuah cabang, dan tempatnya paling atas, supaya data tidak sah ditolak sebelum ada langkah yang menyimpan, menagih, atau mengirim pesan.