当前位置 : 主页 > 编程语言 > ruby >

将Ruby对象转换为Javascript对象以进行插值

来源:互联网 收集:自由互联 发布时间:2021-06-23
将一些常见的 Ruby对象(如字符串,散列,数组)转换为相应的 Javascript对象有什么好方法?例如,jQuery css()接受散列作为参数.假设我有一个像这样的Ruby哈希: h = {"background-color" = "yellow", "co
将一些常见的 Ruby对象(如字符串,散列,数组)转换为相应的 Javascript对象有什么好方法?例如,jQuery css()接受散列作为参数.假设我有一个像这样的Ruby哈希:

h = {"background-color" => "yellow", "color" => "green"}

我想将这个ruby对象嵌入到一个字符串中,以便它成为一个有效的javascript(jQuery)命令.我现在最好的尝试是通过像这样的json转换它:

"$('#foo').css(JSON.parse('#{h.to_json}'));"

但它运作不佳.我想要一种更直接,更有效的方法来做到这一点.有好办法吗?

无需转换为字符串然后JSON.parse:

"$('#foo').css(#{h.to_json});"

或者,如果你打破它…

var h = #{h.to_json};
"$('#foo').css(h);"

哪个呈现给客户端:

var h = {"background-color":"yellow","color":"green"};
$('#foo').css(h);
网友评论