91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么在javascript中判斷json格式

發布時間:2021-06-07 18:06:16 來源:億速云 閱讀:691 作者:Leah 欄目:web開發

怎么在javascript中判斷json格式?針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

判斷方法:首先使用“JSON.parse(str)”語句解析指定數據str;然后使用“if(typeof obj =='object'&&obj)”語句判斷解析后數據的類型是否為“object”類型;如果是,則str數據是json格式。

js判斷字符串是否為JSON格式

不能簡單地使用來判斷字符串是否是JSON格式:

function isJSON(str) {
    if (typeof str == 'string') {
        try {
            JSON.parse(str);
            return true;
        } catch(e) {
            console.log(e);
            return false;
        }
    }
    console.log('It is not a string!')    
}

以上try/catch的確實不能完全檢驗一個字符串是JSON格式的字符串,有許多例外:

JSON.parse('123'); // 123
JSON.parse('{}'); // {}
JSON.parse('true'); // true
JSON.parse('"foo"'); // "foo"
JSON.parse('[1, 5, "false"]'); // [1, 5, "false"]
JSON.parse('null'); // null

我們知道,JS中的數據類型分為:字符串、數字、布爾、數組、對象、Null、Undefined。

我們可以使用如下的方法來判斷:

function isJSON(str) {
    if (typeof str == 'string') {
        try {
            var obj=JSON.parse(str);
            if(typeof obj == 'object' && obj ){
                return true;
            }else{
                return false;
            }

        } catch(e) {
            console.log('error:'+str+'!!!'+e);
            return false;
        }
    }
    console.log('It is not a string!')
}


console.log('123 is json? ' + isJSON('123'))
console.log('{} is json? ' + isJSON('{}'))
console.log('true is json? ' + isJSON('true'))
console.log('foo is json? ' + isJSON('"foo"'))
console.log('[1, 5, "false"] is json? ' + isJSON('[1, 5, "false"]'))
console.log('null is json? ' + isJSON('null'))
console.log('["1{211323}","2"] is json? ' + isJSON('["1{211323}","2"]'))
console.log('[{},"2"] is json? ' + isJSON('[{},"2"]'))
console.log('[[{},{"2":"3"}],"2"] is json? ' + isJSON('[[{},{"2":"3"}],"2"]'))

運行結果為:

> "123 is json? false"
> "{} is json? true"
> "true is json? false"
> "foo is json? false"
> "[1, 5, "false"] is json? true"
> "null is json? false"
> "["1{211323}","2"] is json? true"
> "[{},"2"] is json? true"
> "[[{},{"2":"3"}],"2"] is json? true"

所以得出以下結論:

JSON.parse() 方法用來解析JSON字符串,json.parse()將字符串轉成json對象

如果JSON.parse能夠轉換成功;并且轉換后的類型為object 且不等于 null,那么這個字符串就是JSON格式的字符串。

JSON.parse():

JSON 通常用于與服務端交換數據。

在接收服務器數據時一般是字符串。

我們可以使用 JSON.parse() 方法將數據轉換為 JavaScript 對象。

語法:

JSON.parse(text[, reviver])

參數說明:

  • text:必需, 一個有效的 JSON 字符串。

  • reviver: 可選,一個轉換結果的函數, 將為對象的每個成員調用此函數。

解析前要確保你的數據是標準的 JSON 格式,否則會解析出錯。

關于怎么在javascript中判斷json格式問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

花莲市| 曲阳县| 邵阳县| 长丰县| 天全县| 丁青县| 阳原县| 河北区| 外汇| 喜德县| 银川市| 云龙县| 涿州市| 察隅县| 大冶市| 丰镇市| 嘉黎县| 柳河县| 龙川县| 通州区| 周宁县| 台南县| 望奎县| 永寿县| 阿拉善右旗| 乌什县| 木兰县| 菏泽市| 呼玛县| 怀化市| 九龙县| 连平县| 永春县| 即墨市| 芜湖县| 望江县| 额济纳旗| 秦皇岛市| 托克逊县| 太白县| 汕尾市|