Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/446.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 是什么导致';未编码合成错误:缺失)和#x27;在这个代码示例中?_Javascript_Html_Json - Fatal编程技术网

Javascript 是什么导致';未编码合成错误:缺失)和#x27;在这个代码示例中?

Javascript 是什么导致';未编码合成错误:缺失)和#x27;在这个代码示例中?,javascript,html,json,Javascript,Html,Json,为什么在运行下面的代码时会收到此错误消息 参数列表后未捕获的语法错误(缺少) 读取json var load=function(){ var数据={“take”:2,“timed_out”:false,{“pieces”:{“total”:5,“successful”:5,“failed”:0},“hits”:{“total”:117,“max_score”:0,“hits”:[],aggregations”:{“2”:{“doc error”:228,“sum_other_t”:10705,

为什么在运行下面的代码时会收到此错误消息

参数列表后未捕获的语法错误(缺少)


读取json
var load=function(){
var数据={“take”:2,“timed_out”:false,{“pieces”:{“total”:5,“successful”:5,“failed”:0},“hits”:{“total”:117,“max_score”:0,“hits”:[],aggregations”:{“2”:{“doc error”:228,“sum_other_t”:10705,“bucket”:[{“key”:“2016”,“count”:196},{“key”:“2015”,“count”:163},{“键”:“2014”,“计数”:159},{“键”:“2013”,“计数”:157},{“键”:“2012”,“计数”:157}}};
var myData=JSON.parse(数据);
log(myData.aggregations.2.bucket.length);
//console.log(myData);
}
你好
根据文档只能在以下情况下使用

在这段代码中,属性必须是有效的JavaScript标识符,即字母数字字符序列,还包括下划线(“\”)和美元符号($”),不能以数字开头。例如,object.$1有效,而object.1无效


因此,您需要使用访问属性
2


读取json
var load=function(){
var数据={“take”:2,“timed_out”:false,{“pieces”:{“total”:5,“successful”:5,“failed”:0},“hits”:{“total”:11537,“max_score”:0,“hits”:[]},“aggregations”:{“2”:{“doc_上限”:228,“doc_count”:10705,“bucket”:[{“key”:“2016”,“count”:196},{“key”:“2015”,“count”:163},{“键”:“2014”,“计数”:159},{“键”:“2013”,“计数”:157},{“键”:“2012”,“计数”:157}}};
var myData=JSON.parse(数据);
log(myData.aggregations[2].bucket.length);
//console.log(myData);
}
你好

您可以将“JSON”直接放入JavaScript代码中,而无需通过
JSON.parse对其进行解析;它只是一个对象文字。1)你需要使用
[2]
而不是
.2
-2)你不需要解析任何东西,它已经是有效的语法(因此名为:JSON=JavaScript object Notaction),所以你只需要
var myData={“take”:2,…}我猜用户已经在示例中粘贴了一个JSON服务器响应来演示这个问题。
<html>
    <head>
        <title>read json</title>
        <script type="text/javascript">
    var load = function() {
      var data='{"took": 2,"timed_out": false,"_pieces": {  "total": 5,  "successful": 5,  "failed": 0},"hits": {  "total": 117,  "max_score": 0,  "hits": []},"aggregations": {  "2": {    "doc_error": 228,    "sum_other_t": 10705,    "buckets": [      {        "key": "2016",        "count": 196      },      {        "key": "2015",        "count": 163      },      {        "key": "2014",        "count": 159      },      {        "key": "2013",        "count": 157      },      {        "key": "2012",        "count": 157      }    ]  }}}';
      var myData = JSON.parse(data);
      console.log(myData.aggregations.2.buckets.length) ;   
      //console.log(myData) ;   
    }
</script>
    </head>
    <body>
hi
    </body>
</html>