Преобразование String в массив в JavaScript

У меня есть строка PHP, как это:

$string = 'a => 1 , b => 2 , c => 3 , d => 4'; 

который я создал из данных из базы данных, где каждый "x => y" представляет ассоциативную связь между x и y.

Затем я переношу эту строку в html-документ (JQuery) и пытаюсь сделать массив из него в JavaScript, чтобы я мог обрабатывать его на стороне клиента.

ВОПРОС:

Возможно ли создать массив JavaScript из строки?
Например, мне нужно получить значения в массиве, вызвав 'alert(array["c"]);' или что-то подобное.

ПРИМЕЧАНИЕ. Не стесняйтесь изменять семантику указанной строки ($ string) по мере необходимости.

Любая помощь ценит парней ….

PHP-код

(например, файл, например array.php):

 $array=array( 'a'=>'I am an A', 'param2_customname'=>$_POST['param2'], 'param1'=>$_POST['param1'] ); echo json_encode($array); 

Код jQuery:

 $.post('array.php', {'param1': 'lol', 'param2': 'helloworld'}, function(d){ alert(da); alert(d.param2_customname); alert(d.param1); },'json'); 

Вы можете использовать это для массивов, помните тег 'json' в конце запроса каждый раз.

Вы должны заглянуть в JSON. PHP имеет функции для записи JSON, и javascript может декодировать такие объекты JSON и создавать собственные объекты

Вы можете использовать метод split () в javascript:

http://www.w3schools.com/jsref/jsref_split.asp

Я бы сделал это

 <?php $string = "a => 1, b => 2"; $arr1 = explode(",",$string); $arr2 = array(); foreach ($arr1 as $str) { $arr3 = explode("=>", $str); $arr2[trim($arr3[0])] = trim($arr3[1]); } ?> <script type="text/javascript"> $(document).ready(function(){ var myLetters = new Array(); <?php foreach($arr2 as $letter => $number): ?> myLetters['<?php echo $letter; ?>'] = "<?php echo $number; ?>"; <?php endforeach; ?> }); </script> 

который выведет это

 <script type="text/javascript"> $(document).ready(function(){ var myLetters = new Array(); myLetters['a'] = "1"; myLetters['b'] = "2"; }); </script>