比如我有两个变量,我要将a转换成字符串,将b转换成JSON对象:
<a href="http://www.css88.com/archives/3919#viewSource">view source</a>
<code>1</code>
<code>var</code> <code>a={</code><code>"name"</code><code>:</code><code>"tom"</code><code>,</code><code>"sex"</code><code>:</code><code>"男"</code><code>,</code><code>"age"</code><code>:</code><code>"24"</code><code>};</code>
<code>2</code>
<code> </code>
<code>3</code>
<code>var</code> <code>b=</code><code>'{"name":"Mike","sex":"女","age":"29"}'</code><code>;</code>
在Firefox,chrome,opera,safari,ie9,ie8等高级浏览器直接可以用JSON对象的stringify()和parse()方法。
JSON.stringify(obj)将JSON转为字符串。JSON.parse(string)将字符串转为JSON格式;
上面的转换可以这么写:
<code>01</code>
<code>02</code>
<code>03</code>
<code>04</code>
<code>05</code>
<code>var</code> <code>aToStr=JSON.stringify(a);</code>
<code>06</code>
<code>07</code>
<code>var</code> <code>bToObj=JSON.parse(b);</code>
<code>08</code>
<code>09</code>
<code>alert(</code><code>typeof</code><code>(aToStr)); </code><code>//string</code>
<code>10</code>
<code>11</code>
<code>alert(</code><code>typeof</code><code>(bToObj));</code><code>//object</code>
JSON.stringify()
ie8(兼容模式),ie7和ie6可以使用eval()将字符串转为JSON对象,
<code>var</code> <code>c=</code><code>'{"name":"Mike","sex":"女","age":"29"}'</code><code>;</code>
<code>var</code> <code>cToObj=eval(</code><code>"("</code><code>+c+</code><code>")"</code><code>);</code>
<code>alert(</code><code>typeof</code><code>(cToObj));</code>