2016-10-29 33 views
0

我正在使用一個名爲(http://michaeleisenbraun.com/columns/)的插件將json轉換爲表。將括號添加到json ajax

我使用下面的代碼:

<script> 
$.ajax({ 
     url:'/large-data.json', 
     dataType: 'json', 
     success: function(json) { 
      example2 = $('#example2').columns({ 
       data:json, 
      }); 
     } 
    }); 
</script> 

它運作良好,當JSON是在括號中,象下面這樣:

[ 
    { 
    "id": 9998, 
    "isActive": false, 
    "balance": "$5", 
    "age": 38, 
    "eyeColor": "blue", 
    "name": "Lola Townsend", 
    "gender": "female", 
    "company": "...", 
    "email": "[email protected], 
    "phone": "..." 
    } 
] 

但是,如果JSON是不是括號也不行,如下所示:

{ 
    "id": 9998, 
    "isActive": false, 
    "balance": "$5", 
    "age": 38, 
    "eyeColor": "blue", 
    "name": "Lola Townsend", 
    "gender": "female", 
    "company": "...", 
    "email": "[email protected], 
    "phone": "..." 
    } 

json響應來自其他網站,所以我將無法控制它是否能夠控制es /沒有括號。

有沒有一種方法可以確保json每次都返回括號,如果不是,那麼括號會被添加?

我試過JSON.parse(),它沒有工作。

回答

0

第一個意思是它是一個數組對象,第二個只是一個對象。我現在並沒有真正明白你想要做什麼,但是如果它不是一個完整的對象,你可以簡單地將對象分配到數組中。像這樣:

if(!Arrays.isArray(yourObject)) { 
    var temp = [] ; 
    temp.push(yourObject); 
    yourObject= temp; 
} 

我還沒有測試它,因爲我不知道你想要做什麼,但這是主要想法。

希望它有幫助!

  • 尼克
0

您可以使用正則表達式來檢查代碼是否與^\[|\n*\]$正確。如果字符串的第一個字符是[,並且最後一個是],則應該有2個匹配項。

您可以在這裏測試:https://regex101.com/r/Cukwog/1