2.1 Pembolehubah dan kesakitan
Mari kita mulakan dengan yang paling menarik. JavaScript mempunyai pembolehubah, tetapi pembolehubah tersebut tidak mempunyai jenis. Sebarang pembolehubah boleh diberikan secara mutlak sebarang nilai. Kelihatan tidak berbahaya atau berguna sehingga anda memerlukan jenisnya.
Kata kunci digunakan untuk mengisytiharkan pembolehubah var
:
var name;
var name = value;
Contoh bekerja dengan pembolehubah dalam JavaScript:
var a = 10, b = 20;
var c = a*a + b*b;
var s = "Diagonal equals:";
console.log( s + Math.sqrt(c));
Kod yang bagus dan jelas, bukan? Mungkin ini adalah kali terakhir dalam hidup anda apabila anda melihat kod JavaScript yang cantik dan boleh difahami. Ingat detik ini :)
2.2 Menaip dalam JavaScript
Seperti yang dinyatakan di atas, pembolehubah dalam bahasa JavaScript tidak mempunyai jenis. Tetapi nilai pembolehubah mempunyai jenis. Berikut ialah 5 jenis yang paling biasa dalam JavaScript:
# | taip | Contoh | Penerangan |
---|---|---|---|
1 | nombor |
|
Mengandungi sebarang nombor |
2 | Tali |
|
Mengandungi rentetan |
3 | Boolean |
|
Mengandungi benar atau salah |
4 | tatasusunan |
|
Mengandungi pelbagai elemen |
5 | Tarikh |
|
Mengandungi tarikh |
6 | Objek |
|
Mengandungi objek yang terdiri daripada kunci, pasangan nilai. Sesuatu yang serupa dengan HashMap di Jawa |
7 | fungsi |
|
Fungsi |
Jenis kata kunci digunakan untuk menentukan jenis objek, contohnya:
var s = "134";
var x = (typeof s == "String") ? s*1 : s;
2.3 Fungsi dan pulangan
Dan sudah tentu JavaScript mempunyai fungsi. Tiada kelas, jadi fungsi boleh diisytiharkan di mana-mana dalam kod. Malah dalam fungsi lain. Format umum ialah:
function name(a, b, c) {
// function code
return result;
}
Fungsi tidak mempunyai jenis. Mengapa, jika tiada kawalan keserasian jenis dalam bahasa itu sendiri? Parameter fungsi mungkin juga tiada. Begitu juga arahan pulangan, yang mengembalikan nilai.
Apabila memanggil fungsi, anda boleh menghantar sebarang bilangan parameter dari sebarang jenis . Lebihan akan dibuang, yang hilang akan sama null
.
Contoh fungsi:
function getValue(name)
{
return this[name];
}
function setValue(name, value)
{
this[name] = value;
}
2.4 Tatasusunan dalam JavaScript
Tatasusunan dalam JavaScript sangat serupa dengan tatasusunan dalam Java. Contoh:
var array = [1, 2, 3, 4, 5];
array[3] = array[2];
console.log (array[0]);
Mereka boleh mempunyai nilai apa-apa jenis, malah tatasusunan lain:
var array = [1, "Hello", 3.14, [4, 5] ];
array[3] = array[2];
console.log (array[0]);
Di samping itu, tatasusunan juga berkelakuan seperti koleksi - anda boleh menambah elemen secara dinamik padanya:
var array = [];
array.push(100);
array.push(101);
array.push(102);
array[1] = array[2];
console.log (array[0]);
2.5 Objek dalam JavaScript
Objek dalam JavaScript sangat serupa dengan HashMap dalam Java: ia mengandungi pasangan nilai kunci. Contoh:
var obj = {
name: "Bill Gates",
age: 67,
company: "Microsoft"
};
console.log (obj.age);
Medan objek boleh diakses dalam dua cara berbeza:
var x = obj.age;
var x = obj["age"];
Seperti HashMap, medan boleh dibuat dan dipadamkan. Contoh:
var obj = {};
obj.name = "Bill Gates";
obj.age = 67;
obj.company = "Microsoft";
delete obj.age; //remove field