TypeScript - Numbers: A Comprehensive Guide for Beginners
Hai teman-teman, sang pelajar coding masa depan! Selamat datang ke perjalanan kita dalam dunia angka TypeScript. Sebagai guru komputer yang ramah di lingkungan sekitar Anda, saya disini untuk mengarahkan Anda melalui topik yang menarik ini. Jangan khawatir jika Anda belum pernah menulis baris kode sebelumnya - kita akan mulai dari awal dan naik tingkat per tingkat. Jadi, ambil secangkir kopi (atau minuman favorit Anda), dan mari kita masuk ke dalam!
Apa Itu Angka di TypeScript?
Sebelum kita masuk ke detailnya, mari bicarakan apa itu angka di TypeScript. Dalam dunia pemrograman, angka adalah salah satu tipe data yang paling fundamental. Mereka seperti blok bangunan dari matematika dalam kode kita. TypeScript, sebagai superset JavaScript, menangani angka dengan cara yang mirip tapi dengan beberapa keuntungan tambahan.
Sintaks: Cara Menulis Angka di TypeScript
Dalam TypeScript, Anda dapat menulis angka dalam beberapa cara. Mari kita lihat beberapa contoh:
let age: number = 30;
let price: number = 19.99;
let billion: number = 1e9;
let hexColor: number = 0xffffff;
let binaryValue: number = 0b1010;
let octalValue: number = 0o744;
mari kitauraikan ini:
-
age
: Sebuah integer sederhana. -
price
: Sebuah angka desimal (juga disebut angka floating-point). -
billion
: Notasi ilmiah (1 milyar). -
hexColor
: Notasi heksadesimal (warna putih dalam RGB). -
binaryValue
: Notasi biner (setara 10 dalam desimal). -
octalValue
: Notasi oktal (setara 484 dalam desimal).
Ingat, di TypeScript, semua angka adalah nilai floating-point. Ini berarti bahwa meskipun Anda menulis sebuah integer seperti 30
, itu disimpan sebagai 30.0
di belakang layar.
Membuat Tipe Angka
Dalam TypeScript, Anda dapat mendeklarasikan sebuah variabel secara eksplisit sebagai tipe angka. Ini adalah salah satu fitur kunci yang membedakan TypeScript dari JavaScript - itu memungkinkan kita untuk menambah anotasi tipe ke variabel kita.
let score: number;
score = 95;
let temperature: number = -5;
function calculateArea(width: number, height: number): number {
return width * height;
}
let area = calculateArea(10, 20);
console.log(area); // Output: 200
Dalam contoh ini, kita telah mendeklarasikan score
dan temperature
sebagai tipe angka. Kita juga membuat sebuah fungsi calculateArea
yang menerima dua parameter angka dan mengembalikan angka. Hal ini membantu menangkap kesalahan awal jika kita secara tak sengaja mencoba untuk mengirimkan string atau jenis lain.
Membuat Objek Angka
Meskipun hal ini tidak umum (atau direkomendasikan) dalam pemrograman sehari-hari, Anda juga dapat membuat objek angka menggunakan kontruktur Number
:
let numObject: Number = new Number(42);
console.log(typeof numObject); // Output: object
let primitiveNum: number = 42;
console.log(typeof primitiveNum); // Output: number
Perhatikan huruf besar 'N' di Number
saat kita menggunakan kontruktur. Ini menciptakan wrapper objek di sekitar angka, yang berbeda dari jenis number primitif (huruf kecil 'n'). Dalam kebanyakan kasus, Anda akan ingin menggunakan jenis primitif untuk performa yang lebih baik dan kode yang lebih sederhana.
Properti Number
TypeScript mewarisi beberapa properti yang berguna dari objek Number JavaScript. Properti ini adalah properti statis, yang berarti Anda tidak perlu membuat instance Number untuk menggunakannya.
Berikut adalah tabel dari properti Number yang paling umum:
Properti | Deskripsi | Contoh |
---|---|---|
Number.MAX_VALUE | Nilai terbesar yang dapat direpresentasikan | console.log(Number.MAX_VALUE); |
Number.MIN_VALUE | Nilai positif terkecil yang dapat direpresentasikan | console.log(Number.MIN_VALUE); |
Number.NaN | Nilai Not-A-Number | console.log(Number.NaN); |
Number.NEGATIVE_INFINITY | Negative infinity | console.log(Number.NEGATIVE_INFINITY); |
Number.POSITIVE_INFINITY | Positive infinity | console.log(Number.POSITIVE_INFINITY); |
mari kita lihat ini dalam aksi:
console.log(Number.MAX_VALUE); // Output: 1.7976931348623157e+308
console.log(Number.MIN_VALUE); // Output: 5e-324
console.log(Number.NaN); // Output: NaN
console.log(Number.NEGATIVE_INFINITY); // Output: -Infinity
console.log(Number.POSITIVE_INFINITY); // Output: Infinity
Properti ini bisa sangat berguna saat Anda perlu memeriksa nilai ekstrim atau kasus khusus dalam perhitungan Anda.
Metode Number
Angka TypeScript juga datang dengan set metode bawaan yang bisa membantu Anda melakukan berbagai operasi. Berikut adalah tabel dari beberapa metode yang umum digunakan:
Metode | Deskripsi | Contoh |
---|---|---|
toFixed() | Memformat sebuah angka dengan jumlah desimal tertentu | let pi = 3.14159; console.log(pi.toFixed(2)); |
toPrecision() | Memformat sebuah angka ke panjang tertentu | let bigNumber = 1234.5678; console.log(bigNumber.toPrecision(5)); |
toString() | Mengonversi angka ke string | let num = 42; console.log(num.toString()); |
valueOf() | Mengembalikan nilai primitif dari objek Number | let numObj = new Number(42); console.log(numObj.valueOf()); |
mari kita lihat metode ini dalam aksi:
let pi = 3.14159;
console.log(pi.toFixed(2)); // Output: "3.14"
let bigNumber = 1234.5678;
console.log(bigNumber.toPrecision(5)); // Output: "1234.6"
let num = 42;
console.log(num.toString()); // Output: "42"
let numObj = new Number(42);
console.log(numObj.valueOf()); // Output: 42
Metode ini bisa sangat membantu saat Anda perlu memformat angka untuk ditampilkan atau mengonversi mereka untuk operasi lain.
Kesimpulan
Wah! Kita telah menempuh banyak hal hari ini, dari sintaks dasar angka di TypeScript hingga konsep yang lebih maju seperti Properti dan Metode Number. Ingat, bekerja dengan angka adalah keterampilan fundamental dalam pemrograman, dan menguasai konsep ini akan membantu Anda dalam perjalanan coding Anda.
Saat kita mengakhiri, ini adalah sedikit humor coding untuk Anda: Mengapa programmer lebih suka mode gelap? Karena cahaya menarik nyamuk! ?
Tetap berlatih, tetap bersemangat, dan jangan takut untuk mencoba konsep angka ini dalam kode Anda sendiri. Sebelum Anda tahu, Anda akan dapat menghitung dan memanipulasi angka seperti seorang ahli! Sampai jumpa lagi, selamat coding!
Credits: Image by storyset