当前位置 : 主页 > 网页制作 > JQuery >

jquery – 我应该为没有数据的json返回null,空对象或空数组吗?

来源:互联网 收集:自由互联 发布时间:2021-06-15
我发送一个搜索数据库的ajax请求.如果没有找到结果,是否有理由选择返回null,{}或[]?一个被认为是“标准”还是“最佳实践”? 差异可以忽略不计. null是表示“无值”的常用方法,但您
我发送一个搜索数据库的ajax请求.如果没有找到结果,是否有理由选择返回null,{}或[]?一个被认为是“标准”还是“最佳实践”? 差异可以忽略不计.

null是表示“无值”的常用方法,但您的客户端代码需要明确检查.

如果响应实际上意味着“这里是结果,但它们是空的”,[]或{}可能更合适,只要您匹配非空响应的格式(即,如果客户端期望数组,不发送{},反之亦然).

基本上:

>如果空结果集是特殊情况并且您想为其编写显式行为,则null似乎更合适.
>如果您的客户端需要一个数组(例如它将遍历结果),则使用[].
>如果您的客户端需要键值对的映射(例如,它将循环键或将使用result [someKey]),则使用{}.
>如果您的客户端需要单个对象(即它希望结果具有众所周知的属性并且将执行类似result.someProperty的操作),则null优于返回空对象.

或者更清楚:如果客户端将结果视为单个值,请使用null.如果客户将其视为列表,请使用[].如果客户将其视为地图,请使用{}.

网友评论