我如何使用JavaScript来解析Ruby JSON字符串

Phi*_*unt 4 javascript json ruby-on-rails

我正在尝试从Rails应用程序的JSON输出字符串中获取JSON对象.目前在JavaScript中我正在做:

data = "<%= @chromosomes.html_safe %>";
Run Code Online (Sandbox Code Playgroud)

但是,由于JSON对象的开头和结尾都有引号,因此它不会呈现为JSON对象.相反,它正在做类似的事情

 data = "[{"name":"YHet","organism_id":"4ea9b90e859723d3f7000037"}]"
Run Code Online (Sandbox Code Playgroud)

有没有办法可以删除开头和结尾的引号,以便将对象视为数组而不是字符串?

apn*_*ing 8

你为什么不这样做:

data = <%= @chromosomes.html_safe %>;
Run Code Online (Sandbox Code Playgroud)

边注:

我希望你做的事情如下:

@chromosomes = [{ name: "YHet", organism_id: "foo" }].to_json
Run Code Online (Sandbox Code Playgroud)

  • @PhillipWhisenhunt嗯,这就是重点.ERb进入并处理以`<%`开头并以'%>`_结尾的所有内容,然后将文件发送到client_. (3认同)
  • 这显然是最好的事情; 如果它已经是JSON,它应该直接删除到JavaScript源代码而不需要额外的引号.@PhillipWhisenhunt这不是识别`<%=%>`的JavaScript; 这是你的服务器端框架.如果它现在在*双引号内*工作,它将在没有它们的情况下工作. (2认同)