Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/381.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
Json解析javascript:显示为NAN的字符串_Javascript_Json - Fatal编程技术网

Json解析javascript:显示为NAN的字符串

Json解析javascript:显示为NAN的字符串,javascript,json,Javascript,Json,所以我尝试解析一个json文件。我使用alert获取特定字段的值,但每当我传递此特定字符串时,它都显示为nan myjsondata=JSON.parse(json); alert(myjsondata.result.parameters.College-name); Json文件 `{ "id": "1", "timestamp": "2017-05-11T04:03:26.008Z", "lang": "en", "result": { "source": "age

所以我尝试解析一个json文件。我使用alert获取特定字段的值,但每当我传递此特定字符串时,它都显示为nan

myjsondata=JSON.parse(json);
alert(myjsondata.result.parameters.College-name);
Json文件

`{
  "id": "1",
  "timestamp": "2017-05-11T04:03:26.008Z",
  "lang": "en",
  "result": {
    "source": "agent",
    "resolvedQuery": "hi",
    "action": "input.welcome",
    "actionIncomplete": false,
    "parameters": {
       "College-name": "Apex Technical School"},
    "contexts": [],
    "metadata": {
      "intentId": "b11a9493-7c2f-47c0-9928-5653a10c86e9",
      "webhookUsed": "false",
      "webhookForSlotFillingUsed": "false",
      "intentName": "Default Welcome Intent"
    },
    "fulfillment": {
      "speech": "Hi welcome from webfocus Api Ai",
      "messages": [
        {
          "type": 0,
          "speech": "Hi welcome from webfocus Api Ai"
        },
        {
          "type": 0,
          "speech": ""
        }
      ]
    },
    "score": 1
  },
  "status": {
    "code": 200,
    "errorType": "success"
  },
  "sessionId": "04737548-a3ff-485d-af1a-304edfee9486"
}` 

带操作的警报和其他字段工作正常。但是对于学院,它显示为NAN

您将获得一个空值,因为
参数
没有名为
学院名称
的键:

"parameters": {},
此外,您可能希望使用以下选项更改您的选择:

alert(myjsondata.result.parameters['College-name']);

您得到的是空值,因为
参数
没有名为
学院名称
的键:

"parameters": {},
此外,您可能希望使用以下选项更改您的选择:

alert(myjsondata.result.parameters['College-name']);

如图所示,json(
“parameters”),
parameters
为空
“parameters:{}
没有任何名为
College name
的键。因为您的
parameters
为空。请同时更正对象键,它应该是:
警报(myjsondata.result.parameters['College-name')
请注意,
学院名称
不是有效标识符,因此必须使用方括号表示法。如图所示,
参数
为空
“参数”:{}
没有任何名为
学院名称的键。因为您的
参数
为空。请同时更正对象键,它应该是:
警报(myjsondata.result.parameters['College-name'])
请注意,
学院名称
不是有效的标识符,因此必须使用方括号表示法。