• [转]JS判断字符串是否为json数据


    原文地址:https://blog.csdn.net/qq_26400953/article/details/77411520

    这周碰到了很多问题,尽量把遇到的问题都记录下来。

      JS判断字符串是否为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!')    
    }
    这样是不是就可以了呢?测试的时候输入“123”,居然过了,所以是有问题的,于是找到了segmentfault上的一篇问答  https://segmentfault.com/q/1010000008460413/a-1020000008461292 里面也给出了一些解决方案。
      下面是博主师傅给出的解决方案:

         

    function isJsonString(str) {
            try {
                if (typeof JSON.parse(str) == "object") {
                    return true;
                }
            } catch(e) {
            }
            return false;
        }
    如果解析出来的结果类型是一个对象,说明解析成功,如果是其他的类型,说明解析失败了

  • 相关阅读:
    简单字符串处理应避免使用正则表达式
    提高正则表达式的可读性
    用零宽度断言匹配字符串中的特定位置
    避免不必要的回溯
    预编译正则表达式
    用Text::CSV_XS模块处理csv文件
    Ack 类似grep一样的查找
    Apache压力测试
    仅编译正则表达式一次
    排序上下箭头的是实现
  • 原文地址:https://www.cnblogs.com/dirgo/p/10762135.html
Copyright © 2020-2023  润新知