在使用JSON字符串时,有时候需要判断其中是否含有中文字符。本文将介绍两种方法。
方法一:通过正则表达式判断
function isContainChinese(str) {
var reg = /[\u4e00-\u9fa5]/g;
return reg.test(str);
}
var jsonStr = '{"name": "张三","age": 18}';
if (isContainChinese(jsonStr)) {
console.log('JSON字符串中含有中文字符');
} else {
console.log('JSON字符串中不含中文字符');
}
上述代码中,使用了正则表达式 /[\u4e00-\u9fa5]/g
来匹配汉字字符。其中,\u4e00
代表汉字起始点,\u9fa5
代表汉字终止点。
方法二:转换成对象后遍历判断
function isContainChinese(str) {
var obj = JSON.parse(str);
for (var key in obj) {
if (/[\u4e00-\u9fa5]/g.test(obj[key])) {
return true;
}
}
return false;
}
var jsonStr = '{"name": "张三","age": 18}';
if (isContainChinese(jsonStr)) {
console.log('JSON字符串中含有中文字符');
} else {
console.log('JSON字符串中不含中文字符');
}
上述代码中,将JSON字符串转换成对象后,通过遍历对象的每一个属性值判断是否含有中文字符。如果发现有含中文字符的属性值,直接返回 true
,停止遍历。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。