我是通过web api公开的端点,它喷出JSON,如下所示:
"[{"SomeId":1,"SomeName":"Some name 1","Parameter1":1.13,"Parameter2":3.0 ...
到jquery ajax获取请求。一切正常,直到JSON包含NaN(不是数字):
"[{"SomeId":1,"SomeName":"Some name 1","Parameter1":1.13,"Parameter2":NaN ...
如果返回此类数据,则会触发错误回调。
这是一个已知问题吗?是jquery还是web api?我该如何缓解这种情况?感谢。
答案 0 :(得分:6)
这是因为JSON中的令牌NaN
无效。 JSON是JavaScript的对象初始化语法的子集,它不包括它的几个方面,包括NaN
(和Infinity
,undefined
,... )。
提供该输出的Web API产生无效的JSON,因此任何符合要求的JSON解析器都会抱怨它。您需要修复(或要求其提供商修复)API。