如何通过ajax接收,发送和存储json数组

I want to get a json array from ajax call and store it in a array . I tried this code but it doest not work .The alert shows me the string {"value":[1]},{"value":[2]} .I need this string to be converted in JSON array and stored in myData .Is there any problem about the responseJSON or any other thing ? Plz help

making a call

setInterval(function showUser(str) {
 str="1";
        if (window.XMLHttpRequest) {
            
            xmlhttp = new XMLHttpRequest();
        } else {
           
            xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
        }
        xmlhttp.onreadystatechange = function() {
        
          
          var myData=(xmlhttp.responseJSON);
            
             window.alert(myData);
            
               
            
            }
        
        xmlhttp.open("GET","new.php?q="+str,true);
        xmlhttp.send();
        
}, 1000)

and this is the code for new.php

<?php


$conn =mysql_connect("localhost","root","") or die ("we couldn't connect!");
mysql_select_db("webauth");
$rs = mysql_query("SELECT * FROM test") or die(mysql_error());
 while($row = mysql_fetch_array($rs))
 {
        echo '"{values":['.$row['value'].']}'.',';
 }

}

?>

</div>

You're not returning the JSON array properly, because you don't have the [ ] around the array elements. You should just construct a PHP array and call json_encode on it.

$result = array('values' => array());
while ($row = mysql_fetch_array($rs)) {
    $result['values'][] = $row['value'];
}
echo json_encode($result);

When you alert myData, it should show

{ values: [1, 2] }