json解析##
eval不檢查數(shù)據(jù)是否合法
json.pasrse檢查數(shù)據(jù)是否合法
在線json格式化校驗(yàn)工具:jsonlint.com


eval不會(huì)執(zhí)行數(shù)據(jù)的檢查,直接執(zhí)行alert語句
JSON.parse()會(huì)報(bào)錯(cuò),更加的安全

請(qǐng)求方法改進(jìn):
1、服務(wù)器端返回JSON字符串:header("Content-Type:application/json;charset=utf-8");

2、服務(wù)器端所有返回值寫成JSON格式;


3、客戶端解析JSON字符串:
JSON.parse(xhr.responseText)

跨域##
跨域概念###
javaScript處于安全方面的考慮,不允許跨域調(diào)用其他頁面的對(duì)象。什么是跨域呢,簡單地理解就是因?yàn)閖avaScript同源策略的限制,a.com域名下的js無法操作b.com或是c.a.com域名下的對(duì)象
域名地址的組成###

除了服務(wù)端地址的改變叫做重定向以外,其他幾個(gè)可變更的參數(shù)中任意一個(gè)的改變就叫做跨域。

主域名相同,子域名(可能是多級(jí)子域名)

HTTP默認(rèn)訪問80端口
HTTPS默認(rèn)訪問443端口
處理跨域的幾種方法###
1. 代理(屬于后臺(tái)的技術(shù))###


2. JSONP###
JSONP只支持get請(qǐng)求,不支持post請(qǐng)求

實(shí)現(xiàn):
前端
更改的地方


服務(wù)端
獲取 jsonp


改變返回的值

jq自動(dòng)增加了一個(gè)參數(shù)

服務(wù)端返回的值

重點(diǎn)在于:同源策略 + <script>的src不屬于同源策略 + 通過<script>的src指向的文件返回服務(wù)器端數(shù)據(jù)。
3.XMLHttpRequest Level2###
所有支持xhr2的服務(wù)器都可以實(shí)現(xiàn)跨域,只需要去更改服務(wù)端

可以參考:http://www.cnblogs.com/wangfupeng1988/p/4060747.html
http://www.cnblogs.com/laneyfu/p/6544452.html