在Typescript中为泛型对象指定键值对数组,可以通过使用索引签名来实现。索引签名允许我们在对象中使用动态的键值对。
下面是一个示例代码:
interface GenericObject<T> {
[key: string]: T;
}
function createObject<T>(keyValuePairs: [string, T][]): GenericObject<T> {
const obj: GenericObject<T> = {};
keyValuePairs.forEach(([key, value]) => {
obj[key] = value;
});
return obj;
}
// 使用示例
const pairs: [string, number][] = [
['key1', 1],
['key2', 2],
['key3', 3],
];
const obj = createObject<number>(pairs);
console.log(obj); // 输出: { key1: 1, key2: 2, key3: 3 }
在上述代码中,我们定义了一个泛型接口GenericObject<T>
,它使用索引签名来表示对象的键值对。然后,我们编写了一个createObject
函数,它接受一个键值对数组,并返回一个泛型对象。
在使用时,我们可以传入一个键值对数组pairs
,其中每个元素是一个包含键和值的元组。然后,我们调用createObject
函数,并指定泛型参数为number
,以创建一个键为字符串,值为数字的对象。
最后,我们打印输出了创建的对象obj
,可以看到它包含了指定的键值对。
推荐的腾讯云相关产品:无特定要求。
请注意,以上答案仅供参考,具体实现方式可能因实际需求和场景而异。
领取专属 10元无门槛券
手把手带您无忧上云