gpt4 book ai didi

javascript - 从对象返回访问的属性名(键)

转载 作者:行者123 更新时间:2023-11-30 14:19:55 28 4
gpt4 key购买 nike

是否可以在 Javascript/Typescript 中编写一个将参数名称/键作为字符串返回的函数?

function foo(arg) {...}

let user = new User();
foo(user.userId) // => returns string: "userId"
foo(user.name) // => returns string: "name"

为了我的目的,如果函数可以返回整个表达式也可以,这意味着:

foo(user.userId) // => returns string: "user.userId"
foo(user.name) // => returns string: "user.name"

最佳答案

一个选项不完全是一个函数,而是一个包装器,如果可以的话 - 您可以使用 Proxy 来拦截属性访问并返回试图访问的 key :

function User() {}

const userProxy = new Proxy(
new User(),
{ get: (obj, prop) => prop }
);

console.log(userProxy.userId) // => returns string: "userId"
console.log(userProxy.name) // => returns string: "name"

关于javascript - 从对象返回访问的属性名(键),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52938416/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com