JS101 | “Hello World”

Hendra 'hare' Sadewa
3 min readOct 25, 2021

--

Semuanya diawali dengan menyapa dunia~

Photo by Danial Igdery on Unsplash

Jika sebelumnya sudah pernah belajar pemrograman, pastinya sudah tau kan ritual awal para programmer jika menemukan teknologi atau bahasa pemrograman baru? Yap betul mencetak teks Hello World.

Kalau belum mari kenalan dengan Hello world 👋

Tujuan dari hello world adalah mencetak kalimat “Hello World” tanpa petik di terminal atau browser ataupun simulator mobile. Tujuannya untuk memastikan minimal installasi development environment sudah berhasil.

Sebelum ngoding, download dan install terlebih dahulu paket installasi nodejs dari halaman web resmi Node.js berikut:

Pilih salah satu versi yang tersedia, yaitu LTS atau Latest.

  • LTS (Long Term Service) merupakan versi node yang akan didukung hingga 18 bulan, lalu setelah lewat 18 bulan, akan ditambah masa maintenance selama 12 bulan.
  • Latest merupakan versi node yang terkini, dan versi ini akan didukung hingga 6 bulan, setelah lewat 6 bulan versi ganjil akan berhenti didukung, dan versi genap akan masuk ke versi LTS.

Jika proses pemasangan selesai, mari periksa versi node yang terpasang melalui terminal dengan perintah:

node

Output dari perintah tadi akan sesuai dengan versi node yang terpasang di komputer. Umumnya akan muncul seperti berikut:

Welcome to Node.js v13.11.0.
Type ".help" for more information.
>

intepreter runtime node js akan menunggu perintah dari user, mari jalankan perintah untuk mencetak teks di layar konsol dengan perintah:

console.log('Hello World');

Kemudian setelah menekan Enter, akan muncul:

Welcome to Node.js v13.11.0.
Type ".help" for more information.
> console.log('Hello World')
Hello World
undefined
>

Runtime node js sudah berhasil terpasang, namun penasaran ga sih kenapa bisa mencetak teks di layar konsol dengan perintah tadi?

console.log('Hello World');

Perintah terdiri dari objek console yang memanggil fungsi logdengan parameter 'Hello World'.

Photo by Rohit Farmer on Unsplash

Q: Bentar bang, apasih objek, fungsi dan parameter?

A: Sederhananya objek itu adalah representasi dari benda nyata, yang memiliki beberapa fungsi atau metode tertentu, dan fungsi ini dapat memiliki input berupa data yang dimasukan melalui parameter.

Mari kita berandai andai 🦄

Tadi, kita anggap console adalah sebuah objek, nah kita anggap consoleini adalah terminal / cmd kita, dan benda console ini punya fungsi bernama log yang tugasnya (atau berfungsi) untuk mencetak teks ke layar dengan data yang diberikan atau nama lainnya parameter, dari perintah tadi, kita pakai teks 'Hello World' sebagai parameter karena kita ingin mencetak teks 'Hello World' ke layar terminal.

Sehingga bila kita gabungkan menjadi:

console.log('Hello World');

Q: Oke bang, tapi itu kok petik nya ngga kecetak juga ya ke layar ?

Petik yang mengapit teks Hello World menyatakan bentuk atau tipe data yang kita pakai adalah String atau Teks, javascript tidak dapat mengenali data yang kita masukan adalah teks bila tidak diberi petik.

Kita telah selesai menjalankan perintah melalui terminal, nah sekarang kita akan coba menulis program dalam bentuk file javascript (.js).

Pertama buatlah file baru dengan ekstensi .js, dan beri nama hello-world.js.

kemudian dalam file hello-world.js, mari kita tuliskan perintah berikut:

console.log('Halo Halo Dunia');

jika sudah kembali ke terminal, dan pastikan berada dalam satu direktori dengan file hello-world.js, lalu jalankan perintah

node hello-world.js

nanti akan tampil dilayar terminal teks seperti ini:

Halo Halo Dunia

Nah, sekarang kita sudah selesai membuat program sederhana dan juga kita sudah berusaha memahami apa yang terjadi dalam program sederhana yang telah kita buat, jika masih ada hal yang membuat bingung, jangan ragu — ragu untuk bertanya atau membuat issue di github di link Ini issue ini.

Semoga artikel ini dapat bermanfaat dan sampai jumpa di artikel berikutnya.

Cheers 🥂

--

--

Hendra 'hare' Sadewa
Hendra 'hare' Sadewa

Written by Hendra 'hare' Sadewa

Front-end Developer | FOSS & Web Enthusiast

No responses yet