@@ -12,23 +12,20 @@ return $.toJSON(o.toJSON());if(o.constructor===Date)
12
12
hours + ':' + minutes + ':' + seconds + '.' + milli + 'Z"' ; }
13
13
if ( o . constructor === Array )
14
14
{ var ret = [ ] ; for ( var i = 0 ; i < o . length ; i ++ )
15
- ret . push ( $ . toJSON ( o [ i ] ) ) ; return "[" + ret . join ( "," ) + "]" ; }
15
+ ret . push ( $ . toJSON ( o [ i ] ) || "null" ) ; return "[" + ret . join ( "," ) + "]" ; }
16
16
var pairs = [ ] ; for ( var k in o ) { var name ; var type = typeof k ; if ( type == "number" )
17
17
name = '"' + k + '"' ; else if ( type == "string" )
18
18
name = $ . quoteString ( k ) ; else
19
19
continue ; if ( typeof o [ k ] == "function" )
20
20
continue ; var val = $ . toJSON ( o [ k ] ) ; pairs . push ( name + ":" + val ) ; }
21
- return "{" + pairs . join ( ", " ) + "}" ; } }
22
- $ . evalJSON = function ( src )
21
+ return "{" + pairs . join ( ", " ) + "}" ; } } ; $ . evalJSON = function ( src )
23
22
{ if ( JSON && JSON . parse )
24
- return JSON . parse ( src ) ; return eval ( "(" + src + ")" ) ; }
25
- $ . secureEvalJSON = function ( src )
23
+ return JSON . parse ( src ) ; return eval ( "(" + src + ")" ) ; } ; $ . secureEvalJSON = function ( src )
26
24
{ if ( JSON && JSON . parse )
27
25
return JSON . parse ( src ) ; var filtered = src ; filtered = filtered . replace ( / \\ [ " \\ \/ b f n r t u ] / g, '@' ) ; filtered = filtered . replace ( / " [ ^ " \\ \n \r ] * " | t r u e | f a l s e | n u l l | - ? \d + (?: \. \d * ) ? (?: [ e E ] [ + \- ] ? \d + ) ? / g, ']' ) ; filtered = filtered . replace ( / (?: ^ | : | , ) (?: \s * \[ ) + / g, '' ) ; if ( / ^ [ \] , : { } \s ] * $ / . test ( filtered ) )
28
26
return eval ( "(" + src + ")" ) ; else
29
27
throw new SyntaxError ( "Error parsing JSON, source is not valid." ) ; } ; $ . quoteString = function ( string )
30
28
{ if ( _escapeable . test ( string ) )
31
29
{ return '"' + string . replace ( _escapeable , function ( a )
32
- { var c = _meta [ a ] ; if ( typeof c === 'string' ) return c ; c = a . charCodeAt ( ) ; return '\\u00' + Math . floor ( c / 16 ) . toString ( 16 ) + ( c % 16 ) . toString ( 16 ) ; } ) + '"' }
33
- return '"' + string + '"' ; }
34
- var _escapeable = / [ " \\ \x00 - \x1f \x7f - \x9f ] / g; var _meta = { '\b' :'\\b' , '\t' :'\\t' , '\n' :'\\n' , '\f' :'\\f' , '\r' :'\\r' , '"' :'\\"' , '\\' :'\\\\' } } ) ( jQuery ) ;
30
+ { var c = _meta [ a ] ; if ( typeof c === 'string' ) return c ; c = a . charCodeAt ( ) ; return '\\u00' + Math . floor ( c / 16 ) . toString ( 16 ) + ( c % 16 ) . toString ( 16 ) ; } ) + '"' ; }
31
+ return '"' + string + '"' ; } ; var _escapeable = / [ " \\ \x00 - \x1f \x7f - \x9f ] / g; var _meta = { '\b' :'\\b' , '\t' :'\\t' , '\n' :'\\n' , '\f' :'\\f' , '\r' :'\\r' , '"' :'\\"' , '\\' :'\\\\' } ; } ) ( jQuery ) ;
0 commit comments