22、鸿蒙学习——ArkTS中什么是对象字面量
·
在ArkTS中,对象字面量(Object Literal)是一种通过简洁的语法直接创建类实例并初始化属性的方式,无需使用new 关键字。
1、基本概念与语法
对象字面量通过花括号{}包裹属性名和值的键值对来创建对象,适用于需要快速初始化类实例的场景。例如:
class Person {
name: string = '';
age: number = 0;
}
// 使用对象字面量创建实例
let person: Person = { name: "张三", age: 25 };
console.log(person.name); // 输出:张三
特点:无需显示调用构造函数,代码更简洁。
2、与Record类型的结合
对象字面量可与Record泛型类型结合,定义键值对结构:
let data: Record<string, string> = { key1: "value1", key2: "value2" };
用途:适用于动态属性名的场景,如配置对象或映射表。
3、在数组中的应用
对象字面量可直接用于数组初始化,存储多个同类对象:
class Dog {
name: string = '';
age: number = 0;
}
let dogs: Dog[] = [
{ name: "旺财", age: 2 },
{ name: "大黄", age: 5 }
];
优势:简化集合数据的创建。
4、与接口的配合
对象字面量可直接实现接口定义的抽象结构,无需显示类声明:
interface IPerson {
firstName: string;
lastName: string;
sayHi: () => string;
}
let customer: IPerson = {
firstName: "Tom",
lastName: "Hanks",
sayHi: () => `Hi, I'm ${this.firstName}`
};
灵活性:适用于临时对象或轻量级数据封装
5、注意事项
- 类型匹配:属性必须与类或接口定义的成员类型一致,否则会编译报错。
- 初始化要求:若类中未提供默认值,对象字面量必须显示赋值所有非可选属性。
更多推荐

所有评论(0)