Skip to main content
  1. Posts/

JS: Mengubah Fungsi Asynchronous Callback-Based menjadi Promise-Based

·1 min·
javascript javascript
Table of Contents

TODO
#

/**
 * @TODO
 * Ubahlah fungsi asynchronous callback-based getProvinces menjadi Promise-based.
 *
 * Catatan:
 * - Anda boleh menggunakan util.promisify untuk mengubah fungsi callback-based menjadi Promise-based.
 * - Jika nama fungsinya berubah, sesuaikan nilai yang diekspor tanpa mengubah nama properti di akhir berkas ini.
 */
const util = require('util');

function getProvinces(countryId) {
  return new Promise((resolve, reject) => {
    setTimeout(() => {
      if (countryId === 'id') {
        resolve([
          { id: 'id-jk', name: 'Jakarta' },
          { id: 'id-bt', name: 'Banten' },
          { id: 'id-jr', name: 'Jawa Barat' },
        ]);
      } else {
        reject(new Error('Country not found'));
      }
    }, 1000);
  });
}

module.exports = { getProvinces };

Related

JS: Function
·1 min
javascript javascript
JS: Functional Programming
·2 mins
javascript javascript
JS: Map
·1 min
javascript javascript
JS: Module
·1 min
javascript javascript
JS: Object-Oriented Programming
·2 mins
javascript javascript
JS: Penanganan Eror
·3 mins
javascript javascript