IE8/Firefox3.5+/Chrome4/Safari4/Opera10 已实现该方法。使用方式很简单:
复制代码 代码如下:
var str = '{"name":"jack"}';
var json = JSON.parse(str);
alert(json.name);
在以上实现该方法的浏览器中都会弹出“jack”。
如果给Object.prototype添加一个解析json的方法(某人可能会强烈反对这么干污染了原生对象,这里纯粹为了讨论)
复制代码 代码如下:
Object.prototype.parseJSON = function () {
return JSON.parse(this);
}
因为所有的对象都继承了Object的方法,这时候可以直接这么用了,
复制代码 代码如下:
var str = '{"name":"jack"}';
var json = str.parseJSON();
alert(json.name);
str.parseJSON()时,parseJSON内部的this就指向了str。这时候并非所有浏览器都能解析成功。
IE8/Firefox/Safari/Opera仍然会弹出“jack”,Chrome中则报错了:Uncaught illegal access。
为什么这样写Chrome就不支持呢?比较两种方式,传给JSON.parse的参数一个是字符串str,一个是this。貌似这两个没区别?
当str.parseJSON()时,parseJSON内部的this指向了应该就是str。修改下parseJSON方法:
复制代码 代码如下:
Object.prototype.parseJSON = function () {
alert(typeof this);
return JSON.parse(this);
};
重新执行,可以发现parseJSON弹出的是object,可能这就是区别了。直接new一个字符串就能看到明显的效果了
复制代码 代码如下:
var js = JSON.parse(new String('{"name":"jack"}'));
alert(js.name);
以上代码除Chrome报错外,其它浏览器均执行正常。
基本得出结论:
Chrome中,JSON.parse的第一个参数只能是字符串,不能是对象(包括new String方式也不支持)
再回到上面给Object.prototype添加一个解析json的方法,如果要兼容所有浏览器,可以这么写:
复制代码 代码如下:
Object.prototype.parseJSON = function () {
return JSON.parse(this.toString());
}
var str = '{"name":"jack"}';
var json = str.parseJSON();
alert(json.name);
2010-10-09 : 该BUG在Chrome6中已经修复.
相关推荐:
OpenPose大白话解释:让你轻松理解姿态识别的神奇技术,ai天天晴
文字生成AI:开启创意写作的新纪元
为什么选择收录网站是企业在线营销的必备策略,全网营销与推广
AI写作的崛起-“只能AI写作”背后的巨大潜力,舞狮摄影ai
在线AI写文:开启高效创作新时代
什么是seo发外链,seo外链类型有哪些 ,小小苏ai
ChatGPT4网页空白:重新定义智能交互的未来,怎么登ai
360AI写作怎样?助力创作的新风尚,ai到访
优化分析:提升企业效益的关键策略,山东大网站建设
ChatGPT页面空白不乏登录:让你秒变职场高手与生活智囊,百度ai 腾讯ai
SEO项目:如何通过精确优化提升企业网站排名与转化率,武汉做网站优化的公司
ChatGPT一经发布,便受到了用户的狂热追捧,引爆人工智能热潮,十代ai达人办公本
AI免费写文章:让创作变得轻松高效
SEO如何做?全方位解析提升网站排名的秘诀,AI翻译好处
ChatGPT美区要梯子吗?轻松畅享全球智能聊天体验,ai音位
产品经理seo是什么,产品经理seo是什么意思 ,ai政府公文写作 软件
SEO教研:数字营销新趋势,提升网站流量与转化率的关键,齐鲁证券网站建设
SEO师:如何在数字时代为企业赢得流量与销量,十堰网站关键词优化教程
ChatGPT出问题?背后的原因与解决方案,夸克ai写作生成
AI写作免费一键生成下载,助您轻松创作!
seo规范是什么,seo行业标准 ,啊龙ai音乐
SEO伪创:提升网站排名的危险策略与如何避免,怎样介绍社交网站推广
高效创作之路:文章AI生成器的力量
SEO好吗?助力网站成功的关键之道,网站优化方案范文怎么写
seo稿件是什么意思,seo文章写作要求 ,ai写作未来展望和展望
SEO有意:如何通过优化策略提升网站排名与流量,天津政府智慧网站建设
seo适用于什么领域,seo适用于什么领域中 ,ai智能翻译写作机器人v1.0
SEO表述:如何通过精准优化让你的内容脱颖而出,江阴网站建设怎么样啊
Goanno跨级借鉴:推动创新与提升效率的秘密武器,崇明区智能ai艾灸费用
SEM有哪几个平台?数字营销的多元选择,AI怎么取消移动间距
SEO优化是做什么的?让你的网站流量飙升的秘密武器,乳腺癌ai作用机理
seo需要什么能力,seo需要哪些技术 ,ai长条弯曲
seo诊断什么意思,seo诊断a5 ,约瑟夫ai
中文润色:提升表达的艺术,打造无懈可击的语言魅力,广告营销推广新思路论文
什么是seo反连接,网站反链多好还是少好 ,网易ai产品
“收录量为1”,打造数字化时代的独特竞争力,网站建设页面制作流程
ChatGPT进不去怎么办?解决方案与技巧,轻松畅享智能对话,ai va
GPT优化:让你的工作与生活更高效、更智能,Ai__79
为什么seo这么麻烦,seo是什么意思 为什么要做seo ,dota1ai地图命令选ai
ChatGPT为什么打不开了?揭秘背后的原因与解决办法,ai业务后端
亚马逊的seo是什么阿,亚马逊seo项目 ,中考用ai写作会判0分吗
ChatGPT显示无法加载网站是怎么回事?解决方法!,glow将军ai
SEM+SEO:助力企业数字化营销的双剑合璧之道,ai头像丑
SEO招标:如何通过专业SEO服务助力企业脱颖而出,牡丹江关键词排名怎么样
SEO通过-如何通过SEO优化让你的业务在搜索引擎中脱颖而出,保定网站建设推广专家
seo要会些什么,seo需要学些什么内容 ,轻盈ai
seo需要会什么技术呢,seo需要会什么技术呢知乎 ,红色框ai
ChatGPT页面无法访问?解决方案,让你轻松摆脱困扰!,ai染发颜色
GPT在什么时候被人熟知的?从技术突破到广泛应用的背后故事,ai商业新思维ai课程
什么是亚马逊seo策略,亚马逊的seo推广是什么 ,天天学术ai写作优惠券