Javascript Jquery-将字符串转换为数组

Javascript Jquery-将字符串转换为数组,javascript,jquery,arrays,Javascript,Jquery,Arrays,我正在从数据库中检索一个字符串&这个字符串是一个数组 jq.ajax({ type: "GET", url: "/Method/", success: function () { // Sample data var data = "[{

我正在从数据库中检索一个字符串&这个字符串是一个数组

 jq.ajax({
            type: "GET",
            url: "/Method/",
            success: function () {
               // Sample data     
               var data = "[{                                   
                              name: "Santro",
                              canvas: "1"
                             }, {                                       
                              name: "Tata",
                              canvas: "2"
                           }]";
通过AJAX调用获取数据后,我得到字符串

如何将此字符串转换为数组?

试试这个

jq.ajax({
        type: "GET",
        url: "/Method/",
        dataType: "JSON",
        success: function (obj) {
            $.map(obj, function(el) 
               { 
                    return el // as array 
               });
        }

您的php应该如下所示:

 public function actionTest2() {
    $arr[] = [
        'name' => 'saura',
        'canvas' => 1,
    ];
    $arr[] = [
        'name' => 'tat',
        'canvas' => 3,
    ];
  //$arr like your db result 
    echo json_encode($arr);
}
和php输出:
[{“name”:“saura”,“canvas”:1},{“name”:“tat”,“canvas”:3}]

您的js应该如下所示:

jq.ajax({
    type: "GET",
    url: "test2",
    dataType: "JSON",
    success: function (data) {
      var obj = jQuery.parseJSON(data);
       console.log(obj[0]); // make loop to navigate the data
    }

JSON.parse(数据)忽略错误您的数据无效请在此处尝试@Tushar如何解决此双引号问题?数据是否来自服务器?添加代码。如果不是,则在字符串未完成的行末尾使用\。对字符串使用单引号,对insidevar数据使用双引号=[{name:“Santro”,canvas:“1”},{name:“Tata”,canvas:“2”                            }];检查此:-请检查您想要的答案!