MASPUTRAWAE

HANYA SEORANG MANUSIA BIASA

// HELLO WORLD
console.log('Hello World! Dari `console.log()`')
console.info('Hello World! Dari `console.info()`')
console.warn('Hello World! Dari `console.warn()`')
console.debug('Hello World! Dari `console.debug()`')
console.error('Hello World! Dari `console.error()`')

// VARIABEL DAN TIPE DATA
// var, let, dan const
var initial = "P"
let firstName = "Putra"
const lastName = "Jaya"

// Tipe Data Primitif
let angka = 10                // Number
let nama = "Putra"            // String
let sedangAktif = true        // Boolean
let banyakAngka = 123456789n  // BigInt
let kosong;                   // Undefined
let kosongJuga = null         // Null

// Cara Cek Tipe Data
console.log(`
===== CEK TIPE DATA (Gunakan typeof) =====
variabel: 'angka'       | Yang Bernilai: ${angka}. Bertipe Data: ${typeof(angka)}
variabel: 'nama'        | Yang Bernilai: ${nama}. Bertipe Data: ${typeof(nama)}
variabel: 'sedangAktif' | Yang Bernilai: ${sedangAktif}. Bertipe Data: ${typeof(sedangAktif)}  
variabel: 'kosong'      | Yang Bernilai: ${kosong}. Bertipe Data: ${typeof(kosong)}       
variabel: 'kosongJuga'  | Yang Bernilai: ${kosongJuga}. Bertipe Data: ${typeof(kosongJuga)}   
`)

// Tapi typeof ngak selalu akurat, kasus nya di atas, untuk bagian kosongJuga yang bertipe data null, 
// malah di anggap object, jadi cara ceknya seperti berikut
console.log(`Apakah Ini null?: ${kosongJuga === null}`)

// Tipe Data Non-Primitif (Object)
// object
let bioData = {
  nama: 'Putra',
  tinggi: 160.5,
  sedangBelajar: true
}

// Array
let buah = ["pisang", "mangga", "jeruk", "apel"]
let kumpulanAngka = [1, 20, 5, 12]
let apaAja = [1, "Pisang", 20.5, true]
// Cara Cek Tipe Data
console.log(`
===== CEK TIPE DATA (Gunakan typeof) =====
variabel: 'bioData'       | Yang Bernilai: ${bioData}. Bertipe Data: ${typeof(bioData)}
variabel: 'buah'          | Yang Bernilai: ${buah}. Bertipe Data: ${typeof(buah)}
variabel: 'kumpulanAngka' | Yang Bernilai: ${kumpulanAngka}. Bertipe Data: ${typeof(kumpulanAngka)}
variabel: 'apaAja'        | Yang Bernilai: ${apaAja}. Bertipe Data: ${typeof(apaAja)}
`)

// Tapi typeof ngak selalu akurat, kasus nya di atas, untuk bagian array yang bertipe data array, 
// malah di anggap object, jadi cara ceknya seperti berikut
console.log(`Apakah 'buah' adalah array?: ${Array.isArray(buah)}`)
console.log(`Apakah 'kumpulanAngka' adalah array?: ${Array.isArray(kumpulanAngka)}`)
console.log(`Apakah 'apaAja' adalah array?: ${Array.isArray(apaAja)}`)

// Pasti false karena ini object, bukan array
console.log(`Apakah 'bioData' adalah array?: ${Array.isArray(bioData)}`)

console.log("Biar di tampilkan lebih rapih, bisa pakai `console.info()")
console.table(bioData)
console.table(buah)
console.table(kumpulanAngka)
console.table(apaAja)