相关疑难解决方法(0)

为什么JSON.parse(['1234'])返回1234?

我在理解行为方面遇到了问题JSON.parse.JSON.parse应该只适用于字符串.但它似乎适用于只包含一个字符串(甚至是单引号)的数组,如果字符串只包含数字.

JSON.parse(['1234']) // => 1234
JSON.parse(['1234as']) // => throws error
JSON.parse(['123', '123']) // => throws error
Run Code Online (Sandbox Code Playgroud)

javascript arrays json

75
推荐指数
2
解决办法
7140
查看次数

这个简单的字符串是否被视为有效JSON?

我在SO中看到了很多复杂的问题,不管某些复杂的结构是否被认为是有效的JSON.

但是在光谱的另一端呢?

"12345"
Run Code Online (Sandbox Code Playgroud)

以上是有效的JSON吗?

javascript json

61
推荐指数
4
解决办法
2万
查看次数

为什么JSON.parse失败并带有空字符串?

为什么:

JSON.parse('');
Run Code Online (Sandbox Code Playgroud)

产生错误?

Uncaught SyntaxError: Unexpected end of input
Run Code Online (Sandbox Code Playgroud)

如果它刚刚归来,那不是更合乎逻辑null吗?

javascript json

61
推荐指数
2
解决办法
7万
查看次数

单个字符串值是否被认为是有效的JSON?

您是否考虑过JSON Web响应:

"A serialization error occurred"
Run Code Online (Sandbox Code Playgroud)

是否有效?

一些验证者接受它,而其他人则不接受.

json

32
推荐指数
4
解决办法
3万
查看次数

ECMA-404的出版是否影响了JSON文本的有效性,例如"2"或""你好"?

以下是有效的JSON文本,还是它们的顶级值必须是数组或对象?

4.0
Run Code Online (Sandbox Code Playgroud)
"Hello World"
Run Code Online (Sandbox Code Playgroud)
true
Run Code Online (Sandbox Code Playgroud)

过去的相关问题,例如什么是最小有效JSON?,这个简单的字符串被认为是有效的JSON吗?已经得出结论,他们不是.这是基于RFC-4627中 JSON格式的描述,其中指出:

2. JSON语法

JSON文本是一系列标记.标记集包括六个结构字符,字符串,数字和三个文字名称.

JSON文本是序列化对象或数组.

 JSON-text = object / array
Run Code Online (Sandbox Code Playgroud)

这些是六个结构特征:

[...]

但是,RFC-4627状态声明它"未指定任何类型的Internet标准".相反,JSON的官方标准是最近发布的ECMA-404.与RFC-4627不同,ECMA-404对有效JSON文本的描述不包括任何对象或数组的要求.例如,与上面引用最相似的部分缺少该要求:

4 JSON文本

JSON文本是由符合JSON值语法的Unicode代码点形成的标记序列.该组令牌包括六个结构标记,字符串,数字和三个文字名称标记.

六个结构代币:

[...]

鉴于这个新规范,编码的非数组非对象顶级值是否被认为是有效的JSON文本?

21
推荐指数
1
解决办法
5312
查看次数

为什么一个数字有效json?

$.parseJSON("1")回报1.我希望这会抛出一个错误,因为这似乎不是形式的有效JSON:

{
    "firstName": "John"
}
Run Code Online (Sandbox Code Playgroud)

为什么1解析正确?反正有没有让它反而引发错误.

jquery parsing json

19
推荐指数
3
解决办法
4806
查看次数

问题json_encode utf-8

我的json_encode函数有特殊字符的问题.

例如,我试试这个:

$string="Svr?ek";

echo "ENCODING=".mb_detect_encoding($string); //ENCODING=UTF-8

echo "JSON=".json_encode($string); //JSON="Svr\u010dek"
Run Code Online (Sandbox Code Playgroud)

如何正确显示字符串,JSON ="Svrček"?

非常感谢你.

php json utf-8 character-encoding

17
推荐指数
3
解决办法
7万
查看次数

为什么WCF/JSON没有为null返回值返回`null`?

根据JSON规范,表示空值的正确方法是文字null.

如果是这种情况,为什么WCF会返回空响​​应而不是null?这是一个错误还是在某处记录了这种行为?

完整的repro示例:

using System;
using System.ServiceModel;
using System.ServiceModel.Web;

[ServiceContract()]
public class Service1
{
    [OperationContract(), WebGet(ResponseFormat = WebMessageFormat.Json)]
    public string GetSomeString() { return "SomeString"; }

    [OperationContract(), WebGet(ResponseFormat = WebMessageFormat.Json)]
    public string GetNull() { return null; }
}

public class Host
{
    public static void Main()
    {
        // Very simple WCF server
        var host = new WebServiceHost(typeof(Service1), new Uri("http://localhost:8000/"));
        host.AddServiceEndpoint(typeof(Service1), new WebHttpBinding() {
            HostNameComparisonMode = HostNameComparisonMode.Exact
        }, "");

        host.Open();
        Console.WriteLine("Service is running, press enter to …
Run Code Online (Sandbox Code Playgroud)

c# wcf json

16
推荐指数
1
解决办法
861
查看次数

JSON值是否有效JSON?

JSON值是字符串,数字,真,假,空有效JSON吗?就是,是

true
Run Code Online (Sandbox Code Playgroud)

一个有效的JSON文档?或者必须是一个数组/对象?

一些验证者接受这个(例如http://jsonlint.com/),而其他人则不接受(例如http://jsonschemalint.com/).RFC和json.org在这个问题上并不清楚.

json

11
推荐指数
1
解决办法
1360
查看次数

原始类型是否被视为JSON?

大多数地方JSON的格式都是这样的

{
    color: "red",
    value: "#f00"
}
Run Code Online (Sandbox Code Playgroud)

要么

[  
    { color: "red",     value: "#f00"   },
    { color: "red",     value: "#f00"   }
]
Run Code Online (Sandbox Code Playgroud)

我想问的是原始类型如string,bool,int也是JSON?

我找到了以下链接,

http://json-schema.org/latest/json-schema-core.html

http://www.json.org/

https://zh.wikipedia.org/wiki/JSON

https://www.ietf.org/rfc/rfc4627.txt

http://www.c-sharpcorner.com/uploadfile/3d39b4/data-types-in-json/

和,

在RFC4627中它说

JSON可以表示四种基本类型(字符串,数字,布尔值和null)和两种结构化类型(对象和数组).

字符串是零个或多个Unicode字符序列[UNICODE].

对象是零个或多个名称/值对的无序集合,其中名称是字符串,值是字符串,数字,布尔值,空值,对象或数组.

数组是零个或多个值的有序序列.

术语"对象"和"数组"来自JavaScript的约定.

所以我把它读作纯字符串,数字布尔像

"a string"

100

true
Run Code Online (Sandbox Code Playgroud)

都是JSON,

但我的两位同事认为原始类型只能是对象的价值,

{ ASTRING : "astring" } 是JSON,

如果只有"a string",这不会被调用,因为它不是JSON格式,

我想我,我的同事可能不够专业,无法判断,

所以我想知道,纯粹的原始类型JSON?

.

另一个想法是,JSON被称为交换数据的便捷方式,但如果这种格式不支持纯字符串,

也就是说,如果我只是想抛弃一个字符串,我不能使用JSON来做它?

并且必须强迫它改变{ Message : "a message"},

并且不能使用我认为更简单的方式抛出"a message"...?

json

7
推荐指数
2
解决办法
3816
查看次数

标签 统计

json ×9

javascript ×3

arrays ×1

c# ×1

character-encoding ×1

jquery ×1

parsing ×1

php ×1

utf-8 ×1

wcf ×1