Definizione degli oggetti JavaScript
- Pagina precedente Storia di JS
- Pagina successiva Proprietà degli oggetti JS
In JavaScript, gli oggetti sono i re. Se capisci gli oggetti, capisci JavaScript.
In JavaScript, quasi "tutto" è un oggetto.
- I booleani sono oggetti (se usati new (definizione di parole chiave)
- I numeri sono oggetti (se usati new (definizione di parole chiave)
- Le stringhe sono oggetti (se usate new (definizione di parole chiave)
- Le date sono sempre oggetti
- Le operazioni aritmetiche sono sempre oggetti
- Le espressioni regolari sono sempre oggetti
- Gli array sono sempre oggetti
- Le funzioni sono sempre oggetti
- Gli oggetti sono sempre oggetti
Tutti i valori JavaScript, tranne i valori originali, sono oggetti.
Valori originali JavaScript
Valori originalisi riferisce ai valori che non hanno proprietà o metodi.
Tipi di dati originalisi riferisce ai dati che hanno un valore originale.
JavaScript ha definito 5 tipi di dati originali:
- stringa
- numero
- booleano
- null
- undefined
I valori originali sono invariabili (sono codificati in modo fisso, quindi non possono essere modificati).
Supponiamo che x = 3.14, puoi cambiare il valore di x. Ma non puoi cambiare il valore di 3.14.
值 | Tipo | Commenti |
---|---|---|
"Hello" | stringa | "Hello" è sempre "Hello" |
3.14 | numero | 3.14 è sempre 3.14 |
true | booleano | true è sempre true |
false | booleano | false è sempre false |
null | null | (oggetto) null è sempre null |
undefined | undefined | undefined è sempre undefined |
Gli oggetti sono variabili che contengono variabili
Le variabili JavaScript possono contenere valori singoli:
Esempio
var person = "Bill Gates";
Gli oggetti sono anche variabili. Ma gli oggetti possono contenere molti valori.
I valori seguonoNome : Valoreforma di nome: valore (separati da due punti).
Esempio
var person = {firstName: "Bill", lastName: "Gates", age: 62, eyeColor: "blue"};
Gli oggetti JavaScript sono scritti sotto forma diValori nominatiinsieme.
Proprietà dell'oggetto
Valori nominati negli oggetti JavaScript, detti属性。
属性 | 值 |
---|---|
firstName | Bill |
lastName | Gates |
age | 62 |
eyeColor | blue |
Oggetti scritti come nome-valore, simili a:
- Array associativo in PHP
- Dizionario in Python
- C 中的哈希表
- Java 中的哈希映射
- Ruby 和 Perl 中的散列
对象方法
方法是可以在对象上执行的动作。
对象属性可以是原始值、其他对象以及函数。
对象方法是包含函数定义的对象属性。
属性 | 值 |
---|---|
firstName | Bill |
lastName | Gates |
age | 62 |
eyeColor | blue |
fullName | function() {return this.firstName + " " + this.lastName;} |
JavaScript 对象是被称为属性和方法的命名值的容器。
您将在下一章中学到更多有关方法的知识。
创建 JavaScript 对象
通过 JavaScript,您能够定义和创建自己的对象。
有不同的方法来创建对象:
- 定义和创建单个对象,使用对象文字。
- 定义和创建单个对象,通过关键词 new。
- 定义对象构造器,然后创建构造类型的对象。
在 ECMAScript 5 中,也可以通过函数 Object.create()
来创建对象。
使用对象字面量
这是创建对象最简答的方法。
使用对象文字,您可以在一条语句中定义和创建对象。
对象文字指的是花括号 {}
中的名称:值对(比如 age:62)。
下面的例子创建带有四个属性的新的 JavaScript 对象:
Esempio
var person = {firstName: "Bill", lastName: "Gates", age: 62, eyeColor: "blue"};
空格和折行不重要。对象定义可横跨多行:
Esempio
var person = { firstName: "Bill", lastName: "Gates", age: 62, eyeColor: "blue" };
使用 JavaScript 关键词 new
下面的例子也创建了带有四个属性的新的 JavaScript 对象:
Esempio
var person = new Object(); person.firstName = "Bill"; person.lastName = "Gates"; person.age = 50; person.eyeColor = "blue";
上面的两个例子结果是一样的。无需使用 new Object()
。
Per semplicità, leggibilità e velocità di esecuzione, utilizzare il primo metodo di creazione (metodo di testo degli oggetti).
Gli oggetti JavaScript sono mutabili
Gli oggetti sono mutabili: vengono indirizzati tramite riferimento, non tramite valore.
Se person è un oggetto, le seguenti istruzioni non creeranno una copia di person:
var x = person; // Questo non creerà una copia di person.
oggetto x non copia di person. Èè person.x e person sono lo stesso oggetto.
Qualsiasi modifica a x avrà conseguenze su person, perché x e person sono lo stesso oggetto.
Esempio
var person = {firstName:"Bill", lastName:"Gates", age:62, eyeColor:"blue"} var x = person; x.age = 10; // Questo cambierà contemporaneamente sia x.age che person.age
Nota:Le variabili JavaScript non sono mutabili. Solo gli oggetti JavaScript lo sono.
- Pagina precedente Storia di JS
- Pagina successiva Proprietà degli oggetti JS