TypeScript 带有对象的for-in语句
在TypeScript中,一个对象包含属性和它们的值。我们可以使用for-in循环语句来遍历对象的每一个属性并获得其值。
本教程将通过不同的例子教我们如何迭代对象的键值对。此外,我们还将学习在迭代对象属性时可能出现的错误以及如何快速修复。
语法
用户可以按照下面的语法,使用for-in循环语句来迭代可迭代对象的属性。
For (var_name in object){
Statements or block to execute;
}
现在,我们将看一下不同的例子来迭代对象的属性。
步骤
- 第1步 – 定义一个具有不同属性的对象。
-
第2步 – 使用for…in语句遍历对象,访问对象的键。
-
第3步 – 打印对象的属性。
示例 1
在下面的例子中,我们已经创建了学生对象,它包含students_name、age和role属性。我们使用for-in循环语句来访问学生对象的键。在访问完键后,我们还访问了该特定键的值。
// defining the student object
const student = {
student_name: "Shubham",
role: "Content writer",
age: 22,
};
// iterating through the student object
for (const key in student) {
console.log("The " + key + " of the student is " + object[key]);
}
// defining the student object
var student = {
student_name: "Shubham",
role: "Content writer",
age: 22
};
// iterating through the student object
for (var key in student) {
console.log("The " + key + " of the student is " + student[key]);
}
输出
上述代码将产生以下输出 —
The student_name of the student is Shubham
The role of the student is Content writer
The age of the student is 22
现在让我们定义一个特定类型的对象,它也包含方法和数组作为属性值。
在下一个例子中,我们将遵循以下步骤 –
- 第1步 – 创建一个名为表的接口。
-
第2步–在表界面中定义了字符串类型的品牌和颜色属性。同时,定义了数字的数组的尺寸属性,get_price()方法返回表的价格。
-
第3步 – 创建Table类型的table_obj,用适当的值初始化其属性,并定义get_price()方法。
-
第4步 – 使用for-in循环遍历table_obj的每个键。
-
第5步 – 在for-in循环中,使用对象名称和方括号符号访问某个特定键的值。同时,以格式化的方式打印键值对。
示例 2
下面的例子演示了一个特定类型的对象,它也包含方法和数组作为属性值。在输出中,我们可以看到get_price属性的值是一个完整的函数,而size的值是一个数组。
// Creating the table interface
interface Table {
brand: string;
color: string;
sizes: Array<number>;
get_price(): number;
}
// creating the table_obj of type Table
let table_obj: Table = {
brand: "woodBrand",
color: " grey",
sizes: [10, 40, 30, 20],
get_price(): number {
return 10;
},
};
// Iterating through the table_obj
for (let key in table_obj) {
console.log("The value of " + key + " in table_obj is " + table_obj[key]);
}
// creating the table_obj of type Table
var table_obj = {
brand: "woodBrand",
color: " grey",
sizes: [10, 40, 30, 20],
get_price: function () {
return 10;
}
};
// Iterating through the table_obj
for (var key in table_obj) {
console.log("The value of " + key + " in table_obj is " + table_obj[key]);
}
输出
上述代码将产生以下输出 —
The value of brand in table_obj is woodBrand
The value of color in table_obj is grey
The value of sizes in table_obj is 10,40,30,20
The value of get_price in table_obj is function () {
return 10;
}
在本教程中,用户学会了使用for-in循环来迭代对象的属性值。我们已经看到了两个不同的例子。第一个例子是非常容易为初学者创建的。第二个例子也包含了接口