背景

1.后臺發布API,返回結果為JSON。
2.前端采用AJAX異步請求。

通常我們會碰到后臺API返回單個返回值,類型為string的情況。
但是我們查看瀏覽器控制臺或通過alter直接打印結果時,通常該值是被包裹在雙引號中。
例如,"http://www.baidu.com"

=============割割割割割割割割===================

我們很困惑,
前端說:后端應該返回string,不帶雙引號。
后端說:我們返回的是標準JSON格式,不能去掉雙引號。
前端說:標準JSON格式為什么不帶大括號({})。

如果我們細心的去查詢JSON官方站點(http://json.org)的話,我們會發現JSON擁有一個單獨的類型為String。
定義如下:

string is a sequence of zero or more Unicode characters, wrapped in double quotes, using backslash escapes. A character is represented as a single character string. A string is very much like a C or Java string

String是由0個或多個Unicode字符組成的序列,被包裹在雙引號中。可以使用斜杠(\)來逃逸關鍵字或特殊字符。字符表示單個的字符串。
字符串與C或JAVA中的字符串非常相似。

現在我們明白了,原來這是一種標準的JSON格式。
那么我們怎么解析他呢。

其實非常簡單,我們把他當作普通的JSON來解析就可以了。
<script>
    var jsontext = '"http://www.baidu.com"';
    // 變身
    var url = JSON.parse(jsontext);
    alert(url);
    // 再變身
    var json = JSON.stringify(url);
    alert(json);    
</script>