您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

javascript怎么判断是否是json格式

2025/12/7 9:42:58发布16次查看
判断方法:首先使用“json.parse(str)”语句解析指定数据str;然后使用“if(typeof obj =='object'&&obj)”语句判断解析后数据的类型是否为“object”类型;如果是,则str数据是json格式。
本教程操作环境:windows7系统、javascript1.8.5版、dell g3电脑。
js判断字符串是否为json格式
不能简单地使用来判断字符串是否是json格式:
function isjson(str) { if (typeof str == 'string') { try { json.parse(str); return true; } catch(e) { console.log(e); return false; } } console.log('it is not a string!') }
以上try/catch的确实不能完全检验一个字符串是json格式的字符串,有许多例外:
json.parse('123'); // 123json.parse('{}'); // {}json.parse('true'); // truejson.parse('"foo"'); // "foo"json.parse('[1, 5, "false"]'); // [1, 5, "false"]json.parse('null'); // null
我们知道,js中的数据类型分为:字符串、数字、布尔、数组、对象、null、undefined。
我们可以使用如下的方法来判断:
function isjson(str) { if (typeof str == 'string') { try { var obj=json.parse(str); if(typeof obj == 'object' && obj ){ return true; }else{ return false; } } catch(e) { console.log('error:'+str+'!!!'+e); return false; } } console.log('it is not a string!')}console.log('123 is json? ' + isjson('123'))console.log('{} is json? ' + isjson('{}'))console.log('true is json? ' + isjson('true'))console.log('foo is json? ' + isjson('"foo"'))console.log('[1, 5, "false"] is json? ' + isjson('[1, 5, "false"]'))console.log('null is json? ' + isjson('null'))console.log('["1{211323}","2"] is json? ' + isjson('["1{211323}","2"]'))console.log('[{},"2"] is json? ' + isjson('[{},"2"]'))console.log('[[{},{"2":"3"}],"2"] is json? ' + isjson('[[{},{"2":"3"}],"2"]'))
运行结果为:
> "123 is json? false"> "{} is json? true"> "true is json? false"> "foo is json? false"> "[1, 5, "false"] is json? true"> "null is json? false"> "["1{211323}","2"] is json? true"> "[{},"2"] is json? true"> "[[{},{"2":"3"}],"2"] is json? true"
所以得出以下结论:
json.parse() 方法用来解析json字符串,json.parse()将字符串转成json对象
如果json.parse能够转换成功;并且转换后的类型为object 且不等于 null,那么这个字符串就是json格式的字符串。
json.parse():
json 通常用于与服务端交换数据。
在接收服务器数据时一般是字符串。
我们可以使用 json.parse() 方法将数据转换为 javascript 对象。
语法:
json.parse(text[, reviver])
参数说明:
text:必需, 一个有效的 json 字符串。
reviver: 可选,一个转换结果的函数, 将为对象的每个成员调用此函数。
解析前要确保你的数据是标准的 json 格式,否则会解析出错。
更多编程相关知识,请访问:编程视频!!
以上就是javascript怎么判断是否是json格式的详细内容。
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product