/**
 * 
 * @param {string} key 
 * @param {any} value
 * @returns {{[key]: typeof value}} 
 */
const set = (key, value) => {
    return {[key]: value}
}

const myObj = set("country", "USA")

myObj. // should suggest .country key

我不明白如何正确定义返回对象的键名

enter image description here

推荐答案

下面的方法将会起到作用.只需使用@template将其作为泛型函数输入即可.

/**
 * @template {string} K
 * @template T
 * @param {K} key
 * @param {T} value
 * @returns {Record<K, T>}
 */
const set = (key, value) => {
  return {[key]: value}
}

Screenshot

Javascript相关问答推荐

Fastify错误:CORS策略已阻止从起源api-dev.example.com上的MLhttp请求

Klaro与Angular的集成

当在select中 Select 选项时,我必须禁用不匹配的 Select

如何才能拥有在jQuery终端中执行命令的链接?

警告!合同执行期间遇到错误[执行已恢复](Base Layer 2)

将状态向下传递给映射的子元素

Chrome是否忽略WebAuthentication userVerification设置?""

使搜索栏更改语言

在vercel throws上部署带有gunjs的sveltekit应用无法找到模块./' lib/文本编码'

阿波罗返回的数据错误,但在网络判断器中是正确的

如何在Vue 3中创建自定义 Select 组件,并将选项作为HTML而不是props 传递?

在JS中拖放:检测文件

如果Arrow函数返回函数,而不是为useEffect返回NULL,则会出现错误

在我的index.html页面上找不到我的Java脚本条形图

使用auth.js保护API路由的Next.JS,FETCH()不起作用

JavaScript不重定向配置的PATH

如何使用基于promise (非事件emits 器)的方法来传输数据?

JS Animate()方法未按预期工作

我怎样才能点击一个元素,并获得一个与 puppeteer 师导航页面的URL?

将以前缓存的 Select 器与querySelector()一起使用