jQuery.parseJSON()方法

jQuery 杂项方法

实例

解析一个 JSON 字符串

$(function () { var obj = jQuery.parseJSON('{"name":"John"}'); alert( obj.name === "John" ); })

定义和用法

$.parseJSON() 函数用于将符合标准格式的的JSON字符串转为与之对应的JavaScript对象。

注意:传入格式有误的 JSON 字符串可能导致抛出异常。例如,下面这些无效的 JSON 字符串:

"{test: 1}"    
//test是属性名称,必须加双引号 "{'test': 1}"    
//test是属性名称,必须用双引号(不能用单引号) "'test'"
//test是属性名称,必须用双引号(不能用单引号) ".1"
//number 必须以数字开头; "0.1" 将是有效的 "undefined"    
//undefined 不能表示一个 JSON 字符串; null可以 "NaN"
//NaN 不能表示一个 JSON 字符串; 用Infinity直接表示无限也是不允许的

JSON标准不允许"控制字符"如制表符或换行符,例如:

// 多数情况下,它会抛出一个错误,因为JS解析器会将字符串中的\t或\n等转义直接视作字面值,起到Tab或换行的效果。
$.parseJSON('{"testing":"1\t2\n3"}')

正确写法应该如下(使用两个反斜杠,以免被JS解析器直接转义\t或\n):

$.parseJSON('{"testing":"1\\t2\\n3"}')

注意:在jQuery 1.9之前(不含1.9):如果传入一个空字符串、null或undefined,该函数将返回null,而不是抛出一个错误,即使它不是有效的JSON字符串。


语法

$.parseJSON( json )

jQuery.parseJSON()方法的更多相关文章

  1. JSON.parse(),JSON.stringify(),jQuery.parseJSON()的用法

    1. JSON.parse(jsonString): 在一个字符串中解析出JSON对象 var str = '[{"href":"baidu.com",&quo ...

  2. JSON.parse() JSON.stringify() eval() jQuery.parseJSON() 的区别

    http://www.jb51.net/article/81880.htm    :   jQuery.parseJSON(jsonString) : 将格式完好的JSON字符串转为与之对应的Java ...

  3. 转:关于JSON.parse(),JSON.stringify(),jQuery.parseJSON()的用法

    1. JSON.parse(jsonString): 在一个字符串中解析出JSON对象 ? 1 2 3 var str = '[{"href":"baidu.com&qu ...

  4. JSON.parse()和jQuery.parseJSON()的区别

    jQuery.parseJSON(jsonString) : 将格式完好的JSON字符串转为与之对应的JavaScript对象   (jquery 方法) 1 2 3 var str = '[{&qu ...

  5. jquery工具方法parseJSON

    error : 自定义错误 parseJSON : 字符串转json trim : 去除字符串头尾空字符 parseJSON方法先判断参数是否为字符串,否则返回空对象,再去除字符串头尾空字符,判断是否 ...

  6. jQuery.parseJSON(json) 使用方法

    jQuery.parseJSON(json) 接受一个JSON字符串,返回解析后的对象. 返回值:String传入一个畸形的JSON字符串会抛出一个异常.比如下面的都是畸形的JSON字符串:{test ...

  7. jQuery工具方法

    目录 常用工具方法 判断数据类型的方法 Ajax操作 $.ajax 简便写法 Ajax事件 返回值 JSONP 文件上传 参考链接 jQuery函数库提供了一个jQuery对象(简写为$),这个对象本 ...

  8. AJAX Data 传值 无效的JSON基元:AJAX jQuery的方法,用c#WEBMETHOD-c#,jquery.

    我有这样的代码:I数据值,而不是连接字符串作为对象常量.为什么?看到这里 我的代码是这样的:- $.ajax({ url: "../Member/Home.aspx/SaveClient&q ...

  9. jquery ajax方法和其他api回顾

    >> $ele.load(url, data, callback); //带data参数时为POST请求,否则为GET请求 // $('#testload').load('data.htm ...

随机推荐

  1. python __get__ & __set__

    目的:  提供类似java中的getter/setter的东西. (getter/setter的目的: 将属性方法化,使得属性的引用变得简单---尤其将来属性的读取/赋值有比较复杂的逻辑) 官方简明文 ...

  2. 让height: 100%生效

    html: <body> <div class="box"></div> </body> css: .box{ position: ...

  3. ruby 基础知识2 - 区块 block

    原文 1. block中的 yield 与遍历 5.times do |i| puts i end 或者 def my_times(n) i = 0 while n > i i += 1 yie ...

  4. 1、js基础内容

    js基础内容 1. 编辑器 编译环境 浏览器 编辑软件 sublime DW H5Build Atom ==[注]尽可能多的去使用编辑器去编辑代码.== Html+css ==JS 逻辑== 比作建设 ...

  5. Phpstorm 2018及2017.3.2激活码(DataGrip WebStorm 激活码)

    PhpStrom的下载地址:https://www.jetbrains.com/phpstorm/ 2018适应 最新版PhpStorm 2018正式版改进了PHP 7支持,改进代码完成功能. 直接用 ...

  6. python全栈开发 * 34知识点汇总 * 180719

    文件上传下载:一.文件上传(内容较少)服务器:(代码) import socket import json sk=socket.socket() sk.bind(("127.0.0.1&qu ...

  7. pytorch入门与实践-2.2-CIFAR10分类网络

    1--数据载入 |----流程: DataSet->DataLoader->调用DataLoader |----DataLoader迭代器读不到数据,无报错,一直卡住的显现: DataLo ...

  8. 编译安装centos6.9 php7.0 mysql5.6 nginx1.8

    2018年3月15日 11:41:40 注意文章时效! 此文章不是给新用户参考的,没有每一步的操作,请注意! yum -y groupinstall "Development Tools&q ...

  9. Mybatis 使用了哪些设计模式?

    https://mp.weixin.qq.com/s/ZTh4a-YST5RdIipHykWpPQ

  10. mysql-proxy 简介

    # 背景 今天同事分享的主题就是mysql-proxy,于是下来自己了解下,不求精通,只求知道这个玩意 # 简介 mysql-proxy是mysql官方提供的mysql中间件服务,上游可接入若干个my ...