Materi
Dua aplikasi jarang memakai nama field yang sama. Formulir menyebut nama_lengkap dan no_hp, sedangkan aplikasi pesanan meminta pelanggan.nama dan pelanggan.telepon. Pemetaan field adalah daftar pasangan sumber dan tujuan, lengkap dengan aturan ubahan tipe dan nilai bawaan. Step Functions menyebut alamat sebuah field sebagai path, teks yang diawali $, misalnya $.pelanggan.kota, dan field seperti InputPath, Parameters, dan ResultPath memilih atau membentuk ulang JSON di antara langkah.
// Formulir pendaftaran kursus -> catatan peserta
const form = { nama_peserta: "Sinta", kelas_pilihan: "Excel", jumlah_sesi: "4" };
const peserta = {
nama: form.nama_peserta,
kelas: form.kelas_pilihan,
sesi: Number(form.jumlah_sesi), // "4" -> 4
kota: form.alamat?.kota ?? "belum diisi", // alamat tidak ada -> nilai bawaan
};Di JavaScript, field bertingkat dibaca dengan rantai titik. Bila satu tingkat tidak ada, a.b.c melempar TypeError, sedangkan optional chaining a?.b?.c menghasilkan undefined. Nilai bawaan diberikan dengan ??, yang menurut MDN hanya mengganti null dan undefined. Operator || juga mengganti 0, teks kosong, dan false, padahal ketiganya bisa menjadi nilai yang sah.
Isi formulir web selalu tiba sebagai teks. Jumlah "3" harus diubah dengan Number sebelum dihitung, karena "3" + 2 menghasilkan "32". Number("tiga") menghasilkan NaN, jadi hasil ubahan masih perlu diperiksa di langkah validasi.