什麼是 JavaScript 中的複合資料型別,即物件?
當資料型別表示在單個變數宣告下多個相同或不同的資料時,它被稱為複合資料型別,即具有多個值組合在一起的資料型別。主要有三種複合資料型別,如下所示:
物件
陣列
函式
在本文中,我們將討論第一種複合資料型別,即物件。
物件
物件是屬性的集合,即物件可以以鍵值對的形式儲存任何事物的屬性。JavaScript 中的物件具有鍵,每個鍵都有其自己的值,如示例所示。
let person={firstname:"Prince", lastname:"Varshney", age:23, haircolour:"Black"};當我們想要為單個變數儲存多個值時,就會使用物件,例如,在上面的示例中,我們將一個人的名字、姓氏、年齡和髮色儲存在一個名為“person”的單個變數中。物件的屬性可以是任何資料型別,即可以是字串、數字、布林值,也可以是陣列。由於具有任何資料型別的特殊性,物件在處理大量資料時非常有用。我們可以使用物件來儲存一批學生、一個社會的人或一個國家的人的全部資料。
示例
您可以嘗試執行以下程式碼來學習如何在 JavaScript 中宣告物件。
<html>
<head>
<title>Javascript objects</title>
</head>
<body>
<script>
let person={firstname:"Shivi", lastname:"Singh", age:23, haircolour:"Black"};
for (i in person){
document.write(i + ": " + person[i] + "<br />");
}
</script>
</body>
</html>輸出
這將產生以下結果:
firstname: Shivi lastname: Singh age: 23 haircolour: Black
使用“new”關鍵字建立物件
我們還可以建立一個空的 JavaScript 物件,並在以後向物件中新增屬性。要建立一個空物件,我們必須使用“new”關鍵字,如下所示:
示例
<html>
<head>
<title>Javascript objects</title>
</head>
<body>
<script>
let person=new Object();
person.firstname="Shivi";
person.lastname="Singh";
person.age=23;
person.haircolour="Black";
for (i in person){
document.write(i + ": " + person[i] + "<br />");
}
</script>
</body>
</html>輸出
這將產生以下結果:
firstname: Shivi lastname: Singh age: 23 haircolour: Black
訪問物件值
可以獲取物件的每個值,以便我們可以在以後需要時在程式碼中進一步使用它們。可以透過兩種方法訪問物件值:
1. 使用點(.)運算子
我們可以使用點(.)運算子訪問物件值,如下例所示:
示例
<html>
<head>
<title>Javascript objects</title>
</head>
<body>
<script>
let person={firstname:"Prince", lastname:"Varshney", age:23, haircolour:"Black"};
document.write(person.firstname);
document.write("<br>");
document.write(person.age);
</script>
</body>
</html>輸出
上面示例的輸出如下:
Prince 23
2. 使用方括號
我們還可以使用方括號 [] 訪問物件值,如下例所示:
示例
<html>
<head>
<title>Javascript objects</title>
</head>
<body>
<script>
let person={firstname:"Prince", lastname:"Varshney", age:23, haircolour:"Black"};
document.write(person["firstname"]);
document.write("<br>");
document.write(person["age"]);
</script>
</body>
</html>輸出
上面示例的輸出如下:
Prince 23
廣告
資料結構
網路
關係資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP