objek JavaScript



Semua dalam JavaScript ialah objek: rentetan, nombor, tatasusunan, fungsi...

Selain itu, JavaScript membenarkan objek tersuai.


Semuanya adalah objek

JavaScript menyediakan berbilang objek terbina dalam, seperti String, Date, Array, dsb. Objek hanyalah jenis data khas dengan sifat dan kaedah.

  • Boolean boleh menjadi objek.

  • Jenis nombor boleh menjadi objek.

  • Rentetan juga boleh menjadi objek

  • Tarikh ialah objek

  • Matematik dan keteraturan Ungkapan juga merupakan objek

  • Susun atur ialah objek

  • Malah fungsi boleh menjadi objek


Objek JavaScript

Objek hanyalah sejenis data yang istimewa. Objek mempunyai sifat dan kaedah.


Mengakses sifat objek

Sifat ialah nilai yang dikaitkan dengan objek.

Sintaks untuk mengakses sifat objek ialah:

objectName.propertyName

Contoh ini menggunakan sifat panjang bagi String objek. Dapatkan panjang rentetan:

var message="Hello World!";
var x=message.length;

Selepas kod di atas dilaksanakan, x Nilai akan ialah:

12


Kaedah untuk mengakses objek

Kaedah ialah tindakan yang boleh dilakukan pada objek.

Anda boleh memanggil kaedah dengan sintaks berikut:

objectName.methodName()

Contoh ini menggunakan objek String Kaedah toUpperCase() untuk menukar teks kepada huruf besar:

var message="Hello world!";
var x=message.toUpperCase();

Selepas kod di atas dilaksanakan, nilai JavaScript membolehkan anda mentakrif dan mencipta objek anda sendiri.

Terdapat dua cara berbeza untuk mencipta objek baharu:

Takrif dan buat tika objek

Gunakan berfungsi untuk mentakrifkan objek dan kemudian mencipta tika baharu objek

  • Mencipta tika langsung

    Contoh ini mencipta tika baharu objek dan menambah empat padanya Atribut:
  • Instance

  • <!DOCTYPE html>
    <html>
    <head>
    <meta charset="utf-8">
    <title>php中文网(php.cn)</title>
    </head>
    <body>
    
    <script>
    var person=new Object();
    person.firstname="John";
    person.lastname="Doe";
    person.age=50;
    person.eyecolor="blue"; 
    document.write(person.firstname + " is " + person.age + " years old.");
    </script>
    
    </body>
    </html>

Run Instance»

Klik butang "Run Instance" untuk melihat dalam talian instance

Klik butang "Jalankan Contoh" untuk melihat contoh dalam talian


Gunakan pembina objek

Contoh ini menggunakan fungsi untuk membina objek:

Instance

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>php中文网(php.cn)</title>
</head>
<body>

<script>
function person(firstname,lastname,age,eyecolor){
	this.firstname=firstname;
	this.lastname=lastname;
	this.age=age;
    this.eyecolor=eyecolor;
}
myFather=new person("John","Doe",50,"blue");
document.write(myFather.firstname + " is " + myFather.age + " years old.");
</script>

</body>
</html>

Jalankan Instance»

Klik butang "Run Instance" untuk melihat contoh dalam talian

Dalam JavaScript, ini biasanya menunjukkan kepada fungsi yang kami laksanakan, atau kepada fungsi yang mana fungsi itu milik. Objek (Waktu Jalan)


Mencipta Kejadian Objek JavaScript

Sebaik sahaja anda mempunyai pembina objek, anda boleh mencipta contoh objek baharu, seperti ini:

var myBapa=orang baharu("John","Doe",50,"biru");
var myMother=orang baharu("Sally","Rally",48,"hijau");


Menambah sifat pada objek JavaScript

Anda boleh menambah sifat baharu pada objek sedia ada dengan memberikan nilai pada objek:

Dengan mengandaikan personObj sudah wujud - anda boleh Ia menambahkan atribut baharu ini: nama pertama, nama keluarga, umur dan warna mata:

person.firstname="John";
person.lastname="Doe";
person.age=30 ;
person.eyecolor="blue";

x=person.firstname;

TASelepas kod di atas dilaksanakan, nilai x ialah:

John


Menambah kaedah pada objek JavaScript

Kaedah tidak lebih daripada fungsi yang dilampirkan pada objek.

Kaedah objek yang ditakrifkan dalam fungsi pembina:

function person(firstname,lastname,age,eyecolor)
{
	this.firstname=firstname;
	this.lastname=lastname;
	this.age=age;
	this.eyecolor=eyecolor;

	this.changeName=changeName;
	function changeName(name)
	{
		this.lastname=name;
	}
}

changeName() Nilai nama fungsi diberikan kepada sifat nama akhir orang.

Instance

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>php中文网(php.cn)</title>
</head>
<body>
<script>
function person(firstname,lastname,age,eyecolor){
    this.firstname=firstname;
    this.lastname=lastname;
    this.age=age;
    this.eyecolor=eyecolor;
    this.changeName=changeName;
	function changeName(name){
		this.lastname=name;
	}
}
myMother=new person("Sally","Rally",48,"green");
myMother.changeName("Doe");
document.write(myMother.lastname);
</script>

</body>
</html>

Run Instance»

Klik butang "Run Instance" untuk melihat contoh dalam talian


Kelas JavaScript

JavaScript ialah bahasa berorientasikan objek, tetapi JavaScript tidak menggunakan kelas.

Dalam JavaScript, kelas tidak dibuat, begitu juga objek dibuat daripada kelas (seperti dalam bahasa berorientasikan objek lain).

JavaScript adalah berasaskan prototaip, bukan berasaskan kelas.


JavaScript untuk...dalam gelung

JavaScript untuk...dalam gelung pernyataan melalui sifat objek.

Sintaks

for (variable in object)
{
	执行的代码……
}

Nota: Blok kod dalam gelung untuk...dalam akan dilaksanakan sekali untuk setiap atribut.

Instance

Gelung melalui sifat objek:

Instance

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>php中文网(php.cn)</title>
</head>
<body>
	
<p>点击下面的按钮,循环遍历对象 "person" 的属性。</p>
<button onclick="myFunction()">点击这里</button>
<p id="demo"></p>
<script>
function myFunction(){
	var x;
	var txt="";
	var person={fname:"Bill",lname:"Gates",age:56}; 
	for (x in person){
		txt=txt + person[x];
	}
	document.getElementById("demo").innerHTML=txt;
}
</script>
	
</body>
</html>

Jalankan instance»

Klik butang "Jalankan Instance" untuk melihat contoh dalam talian