首页 > 解决方案 > 确定/访问泛型参数的类型?

问题描述

我需要重构一个函数来补充来自 localStorage 的值:

export function hydrateFromLocalStorage<T>(key: string): T {
  try {
    return JSON.parse(localStorage.getItem(key))
  }
  catch (error) {
    return null;
  }
}

如果类型T不是对象,则不需要通过 JSON 解析器传递。

我见过很多使用ReturnType的例子,但不是在函数体内。是否可以T在函数内确定?

标签: typescript

解决方案


像往常一样,我想多了这个问题。

如果您只是JSON.stringify()在尝试重新水合该值之前使用设置该值,则无需知道泛型参数的返回类型。


推荐阅读