JavaScript Nesneleri

真实生活中的对象、属性和方法

在真实生活中,汽车是一个对象.

汽车有诸如车重和颜色等属性,也有诸如启动和停止的方法:

对象 属性 方法

car.name = porsche

car.model = 911

car.length = 4499mm

car.color = white

car.start()

car.drive()

car.brake()

car.stop()

所有汽车都拥有同样的属性,但属性值因车而异。

所有汽车都拥有相同的方法,但是方法会在不同时间被执行。

JavaScript Nesneleri

您之前已经学到,JavaScript 变量是数据值的容器。

这段代码把一个单一值(porsche)赋给名为 car 的变量:

var car = "porsche";

Kendi kendine deneyin

对象也是变量。但是对象包含很多值。

这段代码把多个值(porsche, 911, white)赋给名为 car 的变量:

var car = {type:"porsche", model:"911", color:"white"};

Kendi kendine deneyin

值以名称:值以名称:值的方式书写(名称和值由冒号分隔)。

JavaScript 对象是被命名值的容器。

对象属性

(JavaScript 对象中的)名称:值对被称为属性.

var person = {firstName:"Bill", lastName:"Gates", age:62, eyeColor:"blue"};
属性 属性值
firstName Bill
lastName Gates
age 62
eyeColor blue

对象方法

对象也可以有方法.

方法是在对象上执行的动作.

方法以Fonksiyon tanımı存储在属性中。

属性 属性值
firstName Bill
lastName Gates
age 62
eyeColor blue
fullName function() {return this.firstName + " " + this.lastName;}

方法是以属性形式存储的函数。

Örnek

var person = {
  firstName: "Bill",
  lastName : "Gates",
  id       : 678,
  fullName : function() {
    return this.firstName + " " + this.lastName;
  }
};

this anahtar kelimesi

Fonksiyon tanımlarındathis fonksiyonu çağıranın "sahibi"ni belirtir.

Örnektekithis fullName fonksiyonuna sahip olan person nesnesi.

Yanithis.firstName Anlamı this nesnesifirstName özelliği.

İlk adım JS this anahtar kelimesiBu bölümde this anahtar kelimesi hakkında daha fazla bilgi öğrenin.

Nesne tanımı

Bir JavaScript nesnesi (oluşturduk):

Örnek

var person = {firstName:"Bill", lastName:"Gates", age:62, eyeColor:"blue"};

Kendi kendine deneyin

Boşluklar ve satır boşlukları izin verilir. Nesne tanımı çok satırlı olabilir:

Örnek

var person = {
    firstName:"Bill",
    lastName:"Gates",
    age:50,
    eyeColor:"blue"
};

Kendi kendine deneyin

Nesne özelliğine erişim

Nesne özelliklerine iki şekilde erişebilirsiniz:

objectName.propertyName

veya

objectName["propertyName]

Örnek 1

person.lastName;

Kendi kendine deneyin

Örnek 2

person["lastName"];

Kendi kendine deneyin

Nesne yöntemine erişim

Nesne yöntemine erişmek için aşağıdaki grameri kullanabilirsiniz:

objectName.methodName()

Örnek

name = person.fullName();

Kendi kendine deneyin

EğerBoşluklar kullanılmaz fullName yöntemine erişirseniz, döndürecektirFonksiyon tanımı:

Örnek

name = person.fullName;

Kendi kendine deneyin

Yöntemler gerçekten fonksiyon tanımlarını özellik değerleri olarak saklar.

Lütfen dizgeleri, sayısal değerleri ve boolean değerleri nesne olarak tanımlamayın!

Eğer "new" anahtar kelimesi ile JavaScript değişkeni tanımlanırsa, bu değişken nesne olarak oluşturulur:

var x = new String();        // 把 x 声明为 String 对象
var y = new Number();        // 把 y 声明为 Number 对象
var z = new Boolean();       //	把 z 声明为 Boolean 对象

Dizgi, sayısal veya mantıksal nesneleri kaçının. Bu, kodun karmaşıklığını artırır ve çalışma hızını düşürür.

Bu eğitimin daha ileri bölümlerinde nesneler hakkında daha fazla bilgi öğreneceksiniz.

Ekdersler

Daha fazla bilgi için JavaScript NesneleriDaha fazla bilgi için, JavaScript İleri Düzey Eğitimi'ndeki ilgili içerikleri okuyun:

ECMAScript Yönlendirilmiş Nesne Teknolojisi
Bu bölüm, yönlendirilmiş nesne teknolojisinin terimlerini, yönlendirilmiş nesne dillerinin gereksinimlerini ve nesnelerin yapısını tanıtmaktadır.
ECMAScript Nesne Uygulamaları
Bu bölüm, nesneleri nasıl tanımlayacağınıza, nasıl örnekleyeceğinize, nasıl atayacağınıza ve bağlama kavramını açıklamaktadır.
ECMAScript Nesne Türleri
Bu bölüm, ECMAScript'in üç tür nesnesini (yerel nesne, yerleşik nesne ve ev sahibi nesne) tanıtmakta ve ilgili kaynak kılavuzlarına yönlendirmelerde bulunmaktadır.
ECMAScript Nesne Alanı
Bu bölüm, ECMAScript alanını ve this anahtar kelimesini anlatmaktadır.
ECMAScript Sınıf veya Nesne Tanımlama
Bu bölüm, ECMAScript nesneleri veya sınıflarının çeşitli yaratma yöntemlerini ayrıntılı olarak açıklamaktadır.
ECMAScript Nesne Değiştirme
Bu bölüm, yeni yöntemler oluşturmak veya mevcut yöntemleri yeniden tanımlamak yoluyla nesneleri nasıl değiştireceğinizi anlatmaktadır.