您的位置:首页 > Web前端 > JavaScript

Ajax传输JSON

2017-02-16 12:02 323 查看

JSON语法

JSON(
JavaScript Object Notation
),是
ECMAScript
的子集,作用是进行数据的交换,而且由于语法更为简洁,网络传输,以及机器解析都更为迅速.

语法规则:
数据在键值对中
数据由逗号分隔
花括号保存对象
方括号保存数组

数据类型:

下列内容 无论 键 值 都是用双引号包起来

数字(整数或浮点数)
字符串(在双引号中)
逻辑值(true 或 false)
数组(在方括号中)
对象(在花括号中)
null

示例代码 下部分代码看起来类似于定义
JavaScript
对象

// 基本对象
{
"name":"fox",
"age":"18",
"sex":"true",
"car":null
}
// 数组
[
{
"name":"小小胡",
"age":"1"
},
{
"name":"小二胡",
"age":"2"
}
]


JSON解析

接下来演示如何使用
JavaScript
PHP
JSON
进行解析

JavaScript 中

使用
JSON
对象

JSON.parse()方法:将
JSON
字符串转化为
JavaScript
对象
JSON.stringify()方法:将
JavaScript
对象,转化为
JSON
字符串

由于老式
IE(8以下)
浏览器中没有
JSON
对象,通过导入
JSON2.js
框架即可解决,框架获取地址为:JSON2.js_github地址

var Obj = {
name:"fox",
age:18,
skill:"撩妹"
};

console.log(Obj);

// 将JavaScript对象格式化为JSON字符串
var jsonStr = JSON.stringify(Obj);

console.log(jsonStr);

// 将JSON字符串转化为JavaScript对象
var jsonObj = JSON.parse(jsonStr);
console.log(jsonObj);


使用
eval()
方法 使用
eval()
方法需要注意的是,需要将内容使用
()括号
包裹起来,如示例代码
``javascript <script type="text/javascript"> var jsonStr =
{

"name":"fox",
"age":18,
"skill":"撩妹"

}`;

var jsonObj = eval('('+jsonStr+')'); console.log(jsonObj);

</script>

### PHP中

* **json_decode()**方法: 将`json`字符串转化为变量
* **json_encode()**方法: 将变量转化为`json`字符串

* **示例代码:**
```php
<?php
header("Content-Type:text/html;charset=utf-8");
// json字符串
$jsonStr = '{"name":"itcast","age":54,"skill":"歌神"}';
// 字符串转化为 php对象
print_r(json_decode($jsonStr));

echo "<br>";
// php数组
$arrayName = array('name' =>'littleFox' ,'age' => 13 );
// php对象 转化为 json字符串
print_r(json_encode($arrayName));
?>

输出结果为:
stdClass Object ( [name] => itcast [age] => 54 [skill] => 歌神 )
{"name":"littleFox","age":13}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: