16. armancho7777777 - 01 Апреля, 2013 - 11:29:16 - перейти к сообщению
nerv, ТС использует jQ, а там есть функция $.parseJSON(json_string)
17. DeepVarvar - 01 Апреля, 2013 - 11:50:41 - перейти к сообщению
nerv пишет:
Зачем библиотека, когда вопрос решается кроссбраузерно в одну строчку?
есть библиотека для старых ie
18. nerv - 01 Апреля, 2013 - 11:52:25 - перейти к сообщению
armancho7777777 пишет:
ТС использует jQ, а там есть функция $.parseJSON(json_string)
согласен. Возможно, жуквери сам разбирает джейсон, если тип данных указан как джейсон или он может идентифицировать его как джейсон. Не помню
![Улыбка Улыбка](./im/emoticons/smile24.gif)
Если сам разбирает, то об этом писали выше
tuareg пишет:
А смысл? Там и так json(в смысле объект)
p.s.: да, разбирает
![Улыбка Улыбка](./im/emoticons/smile24.gif)
p.p.s: вместе с тем, на будущее, возможно кому-нибудь пригодится моя ссылка )
19. armancho7777777 - 01 Апреля, 2013 - 12:03:30 - перейти к сообщению
nerv пишет:
Возможно, жуквери сам разбирает джейсон, если тип данных указан как джейсон или он может идентифицировать его как джейсон. Не помню
![Радость Радость](./im/emoticons/biggrin24.gif)
Плохо, когда не помнишь.
Особенно когда не знаешь ))
Шутка )
По существу:
Из исходников jQ1.7
CODE (javascript):
скопировать код в буфер обмена
скопировать код в буфер обмена
- // .........
- // JSON RegExp
- rvalidchars = /^[\],:{}\s]*$/,
- // .........
- parseJSON: function( data ) {
- if ( typeof data !== "string" || !data ) {
- return null;
- }
- // Make sure leading/trailing whitespace is removed (IE can't handle it)
- data = jQuery.trim( data );
- // Attempt to parse using the native JSON parser first
- if ( window.JSON && window.JSON.parse ) {
- return window.JSON.parse( data );
- }
- // Make sure the incoming data is actual JSON
- // Logic borrowed from http://json.org/json2.js
- if ( rvalidchars.test( data.replace( rvalidescape, "@" )
- .replace( rvalidtokens, "]" )
- .replace( rvalidbraces, "")) ) {
- return ( new Function( "return " + data ) )();
- }
- jQuery.error( "Invalid JSON: " + data );
- }
- // .........