TypeScript 泛型的深入解析与基本使用
// 定义一个泛型函数,用于创建一个值的类型
function createValue<T>(value: T) {
let container: Value<T>;
// 内部封装,暴露一个接口用于外部访问值
class Value<T> {
#data: T;
constructor(value: T) {
this.#data = value;
}
get value() {
return this.#data;
}
}
container = new Value(value);
return container;
}
// 使用泛型函数创建一个String类型的值
const MyStringValue = createValue<string>('Hello, TypeScript!');
// 打印出封装后的值
console.log(MyStringValue.value);
// 使用泛型函数创建一个Number类型的值
const MyNumberValue = createValue<number>(42);
// 打印出封装后的值
console.log(MyNumberValue.value);
这段代码定义了一个名为createValue
的泛型函数,它接受一个类型参数T
,并使用这个类型参数创建一个封装了值的类。这个例子展示了如何创建一个类型安全的封装器,并且如何使用泛型来实现这个封装器可以处理不同类型的值。
评论已关闭