2013-09-10 4 views
0

У меня есть ниже массива JSonкак преобразовать JSON массив яваскрипта массив

`[{"name":"The Shawshank Redemption","rating":"9.3","year":"1994","stars":["Tim Robbins","Morgan Freeman","Bob Gunton"],},{"name":"The Godfather","rating":"9.2","year":"1972","stars":["Marlon Brando","Al Pacino","James Caan"]}]` 

Я хочу, чтобы преобразовать в яваскрипт массиве и печати, как HTML. то я бы скопировал массив и сохранил файл .js, как показано ниже. Проблема заключается в том, чтобы удалить перевернутый ком от "имени", чтобы назвать

var Movies = [ { name: 'The Shawshank Redemption', 
rating: '9.3', 
year: '1994', 
stars: 
[ 'Tim Robbins', 
    'Morgan Freeman', 
    'Bob Gunton' ]}, 
{ name: 'The Godfather', 
rating: '9.2', 
year: '1972', 
stars: 
[ 'Marlon Brando', 
    'Al Pacino', 
    'James Caan' ]} 
]; 
+2

'JSON.parse()'? – Sirko

+0

Посмотрите на http://stackoverflow.com/questions/17490267/how-do-i-convert-a-multi-dimensional-json-object-into-javascript-array –

+0

Но как бы я напечатал этот массив –

ответ

1
var movies= $.parseJSON(myStr); put your string in it 

для печати

var newAry=[]; 
$.each(movies,function(i,v){ 
    newAry.push(JSON.stringify(v)); 
}); 

$('#div').html(newAry); 
+0

как я могу напечатать массив на html-странице, на самом деле я хочу сохранить этот преобразованный массив в отдельном файле js –

+0

@ChhatrapatiSharma like [это] (http://jsfiddle.net/pFh4z/)? – rps

0

вы имеете в виду:

var a = []; 
a.push($.parseJSON('{"a":"b"}')); 

?

1

Если вы хотите довольно напечатать этот массив, например. в <pre> контейнер, вы можете использовать JSON.stringify() с обоими параметрами:

// assuming your parsed JSON is in this variable 
var yourObj = JSON.parse("[your JSON in here]"); 

// pretty print 
var pretty = JSON.stringify(yourObj, null, ' '); 
document.getElementById('target').innerHTML = pretty; 
+0

+1 для объекта JSON, а не jQuery –

0

хорошо, я думаю, что выше массив JSON не в правильной структуры JSON. сначала мы должны удалить запятую (,) из 120-й индекс вашего массива JSon .. Теперь это будет выглядеть, как это ..

var jsonArray = `[{"name":"The Shawshank Redemption","rating":"9.3","year":"1994","stars":["Tim Robbins","Morgan Freeman","Bob Gunton"]},{"name":"The Godfather","rating":"9.2","year":"1972","stars":["Marlon Brando","Al Pacino","James Caan"]}]` ; 

теперь используют JSON.parse()

т.е.

var Movies = JSON && JSON.parse(jsonArray); 

надеюсь, что это вам поможет.

Смежные вопросы