Ruby:获取/设置一个对象';使用字符串/符号的属性
在Ruby中,如何使用字符串/符号获取和设置对象的属性 例如,如果我有一个属性为Ruby:获取/设置一个对象';使用字符串/符号的属性,ruby,Ruby,在Ruby中,如何使用字符串/符号获取和设置对象的属性 例如,如果我有一个属性为car.color和car.name的对象car 我知道你可以做car.send(:color)来获取它的属性,但是我如何设置它呢 car.send("name=", value) 或 我喜欢这个,我想知道是否大多数其他编程语言都有类似的功能。@W.M.Javascript:car[“name”]=value值得注意的是,send只接受属性名的字符串或符号。我在规范中搜索了符号,发现it“如果方法名称不是字符串或符
car.color
和car.name
的对象car
我知道你可以做car.send(:color)
来获取它的属性,但是我如何设置它呢
car.send("name=", value)
或
我喜欢这个,我想知道是否大多数其他编程语言都有类似的功能。@W.M.Javascript:
car[“name”]=value代码>值得注意的是,send只接受属性名的字符串或符号。我在规范中搜索了符号,发现it“如果方法名称不是字符串或符号”
spec,则会引发类型错误。如果像我一样,您有一个符号,则可以调用car.send(color.to_+“=”,value)
将其转换为字符串。。。我想知道如何直接使用这个符号。我想这更多的是重新输入我的评论。我没时间了,所以这里有一点我的想法。。。很抱歉传递符号时,只能get
而不能set
。我是在一个场景中来到这里的,在这个场景中,我有一个方法名作为符号,并希望使用该符号来设置对象属性值。为此,您必须先转换为字符串,然后调用“=”方法car.send(color.To_s+“=”,value)
。
car.send("color=", value)