json数据在前端和php后端处理注意事项
2015-07-19 23:33
531 查看
1.前端要解析解析json的数据,要用
$.ajax({
type: 'POST',
url: url,
data: data,
dataType: 'json',//特别注意
success: success,
});如果用$.post()或$.get()来请求的回来的数据,不能解析为json对象来取里面的值
2.js内置两个解析json的函数
parse用于从一个字符串中解析出json对象,如
var str = '{"name":"huangxiaojian","age":"23"}'
结果:
JSON.parse(str)
Object
age: "23"
name: "huangxiaojian"
__proto__: Object
注意:单引号写在{}外,每个属性名都必须用双引号,否则会抛出异常。
stringify()用于从一个对象解析出字符串,如
var
a = {a:1,b:2}
结果:
JSON.stringify(a)
"{"a":1,"b":2}"
3.php后端
第一种是以数字为键值对情况
以上例程会输出:
第二种:是自己写的键值对情况
输出:
$.ajax({
type: 'POST',
url: url,
data: data,
dataType: 'json',//特别注意
success: success,
});如果用$.post()或$.get()来请求的回来的数据,不能解析为json对象来取里面的值
2.js内置两个解析json的函数
parse用于从一个字符串中解析出json对象,如
var str = '{"name":"huangxiaojian","age":"23"}'
结果:
JSON.parse(str)
Object
age: "23"
name: "huangxiaojian"
__proto__: Object
注意:单引号写在{}外,每个属性名都必须用双引号,否则会抛出异常。
stringify()用于从一个对象解析出字符串,如
var
a = {a:1,b:2}
结果:
JSON.stringify(a)
"{"a":1,"b":2}"
3.php后端
第一种是以数字为键值对情况
$a = array('<foo>',"'bar'",'"baz"','&blong&', "\xc3\xa9"); echo "Normal: ", json_encode($a), "\n";
以上例程会输出:
Normal: ["<foo>","'bar'","\"baz\"","&blong&","\u00e9"]
第二种:是自己写的键值对情况
$d = array('foo' => 'bar', 'baz' => 'long'); echo "Associative array always output as object: ", json_encode($d), "\n"; echo "Associative array always output as object: ", json_encode($d, JSON_FORCE_OBJECT), "\n\n";
输出:
Associative array always output as object: {"foo":"bar","baz":"long"} Associative array always output as object: {"foo":"bar","baz":"long"}
JSON_FORCE_OBJECT选项可以变成对象的形式返回
相关文章推荐
- 一个关于if else容易迷惑的问题
- JQuery1——基础($对象,选择器,对象转换)
- Android学习笔记(二九):嵌入浏览器
- Android java 与 javascript互访(相互调用)的方法例子
- Extjs4.0 最新最全视频教程
- PHP5.2.*防止Hash冲突拒绝服务攻击的Patch
- 深入理解PHP之匿名函数
- Javascript中toFixed方法的改进
- JavaScript演示排序算法
- JSP/PHP基于Ajax的分页功能实现
- javascript实现10进制转为N进制数
- 5个常见可用性错误和解决方案
- 关于PHP通过PDO用中文条件查询MySQL的问题。
- 什么是设计模式
- PHP数据库长连接mysql_pconnect的细节
- XML 与 JSON 优劣对比
- 2019年开发人员应该学习的8个JavaScript框架
- Php Installing An Expansion
- HTML中的script标签研究