mhe*_*ers 1 javascript cookies jquery json stringify
我正在测试Windows Phone 7上的移动网站,而JSON.stringify功能无效.有谁知道为什么会发生这种情况或者我能做些什么来解决这个问题?我正在对数组进行字符串化以将其存储在cookie中.这是我的代码:
vString = JSON.stringify(vehicleArray);
alert ('this alert will never execute');
$j.cookie('vehicleCookie', vString, { expires: 7, path: '/' }); //Store all the vehicles again to the cookie
Run Code Online (Sandbox Code Playgroud)
超出vString行的任何代码都不再执行.
如果记录,vehicleArray看起来像这样:
["145", "273", "241", "553", "490", "380"]
Run Code Online (Sandbox Code Playgroud)
我无法提供有关什么工作或不工作的大量信息,因为Windows phone没有我所知道的任何类型的调试器,并且代码在ie7中工作正常.
您可以扩展jQuery以赋予它一个jQuery.stringify()功能.
它缩小了节约空间:
jQuery.extend({stringify:function(a){var c=typeof a;if(c!="object"||a===null)return c=="string"&&(a='"'+a+'"'),String(a);else{var d,b,f=[],e=a&&a.constructor==Array;for(d in a)b=a[d],c=typeof b,a.hasOwnProperty(d)&&(c=="string"?b='"'+b+'"':c=="object"&&b!==null&&(b=jQuery.stringify(b)),f.push((e?"":'"'+d+'":')+String(b)));return(e?"[":"{")+String(f)+(e?"]":"}")}}});
Run Code Online (Sandbox Code Playgroud)
因此,只需将此文件包含在文件的顶部,然后将有问题的行更改为:
vString = jQuery.stringify(vehicleArray);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1718 次 |
| 最近记录: |