Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/368.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 需要访问二级json字段,但代码仅为一级设置_Javascript_Json - Fatal编程技术网

Javascript 需要访问二级json字段,但代码仅为一级设置

Javascript 需要访问二级json字段,但代码仅为一级设置,javascript,json,Javascript,Json,我试图将标识符传递给函数,以访问这个(非常简化的)json quote对象中的字段“yrhiprice”: quote: { "last": "49.65", "FundamentalData": { "yrhiprice": "49.77000" } } 我要传递给的函数(我无法编辑)根据我放入表格单元格的数据字段访问这些字段: <td data-field="last"></td> 所

我试图将标识符传递给函数,以访问这个(非常简化的)json quote对象中的字段“yrhiprice”:

quote: {
        "last": "49.65",
        "FundamentalData": {
          "yrhiprice": "49.77000"
        }
      }
我要传递给的函数(我无法编辑)根据我放入表格单元格的数据字段访问这些字段:

<td data-field="last"></td>
所以,我有一个相当荒谬的问题:有没有办法进入“YRIPPRICE”领域,即使它只会被放在第一组括号中

我试过“FundamentalData[“yrhiprice”]、“FundamentalData.yrhiprice”和“FundamentalData][yrhiprice”,但都没有成功


非常感谢!

如果您无法编辑函数且
基本数据.yrhiprice
不起作用,您可以将对象展平,以便将
yrhiprice
属性复制到一个级别。显然,这仅在需要复制的所有属性名称都是唯一的情况下才起作用,但即使在这种情况下,您也必须小心在属性前面加上前缀或后缀,使其具有唯一性

因此,如果您有一个
quote
对象,您可以:

myQuote.FundamentalData_yrhiprice = myQuote.FundamentalData.yrhiprice;
然后:

<td data-field="FundamentalData_yrhiprice">


quote.FundamentalData.yrhiprice
quote.last
应该可以正常工作。
console.log()
?难道
“FundamentalData][yrhiprice”
不是
“FundamentalData”[“yrhiprice”
?尽管这是一种愚蠢的方式。谢谢你的回复!我不能console.log()任何因为我不能编辑javascript的内容,只要传递数据字段属性中的内容即可。@Andy:为什么不能编辑javascript?即使你可以访问托管
.js
文件的服务器,你也可以内联一个替换函数。“”基要数据”[“yrhiprice”我试着用转义符来打破引号,但没有成功——我猜是因为它只是把整个事情当作一个字符串来读?是的,这是一种非常愚蠢的方式,但这正是我目前所坚持的。。。
<td data-field="FundamentalData_yrhiprice">
var name = "FundamentalData";
var val = quote[name];
val = val.yrhiprice; //"49.77000"