>>分享Web前端开发技术,并对孙卫琴的《精通Vue.js:Web前端开发技术详解》提供技术支持 书籍支持  卫琴直播  品书摘要  在线测试  资源下载  联系我们
发表一个新主题 开启一个新投票 回复文章 您是本文章第 23125 个阅读者 刷新本主题
 * 贴子主题:  JSON 数据转换为JavaScript对象 回复文章 点赞(0)  收藏  
作者:flybird    发表时间:2020-01-31 00:31:23     消息  查看  搜索  好友  邮件  复制  引用

  

JSON 数据转换为JavaScript对象

JSON 是用于存储和传输数据的格式。

JSON 通常用于服务端向网页传递数据 。

什么是 JSON?

  • JSON 英文全称 JavaScript Object Notation
  • JSON 是一种轻量级的数据交换格式。
  • JSON是独立的语言 *
  • JSON 易于理解。
        
点击在新窗口中浏览原图
CTRL+鼠标滚轮放大或缩小 * JSON 使用 JavaScript 语法,但是 JSON 格式仅仅是一个文本。
文本可以被任何编程语言读取及作为数据格式传递。

JSON 实例

以下 JSON 语法定义了 sites 对象: 3 条网站信息(对象)的数组:

JSON 实例

{ " sites " : [
     { " name " : " Javathinker " ,  " url " : " www.javathinker.net " } ,
     { " name " : " Google " ,  " url " : " www.google.com " } ,
     { " name " : " Taobao " ,  " url " : " www.taobao.com " }
] }

JSON 格式化后为 JavaScript 对象

JSON 格式在语法上与创建 JavaScript 对象代码是相同的。

由于它们很相似,所以 JavaScript 程序可以很容易的将 JSON 数据转换为 JavaScript 对象。

JSON 语法规则

  • 数据为 键/值 对。
  • 数据由逗号分隔。
  • 大括号保存对象
  • 方括号保存数组

JSON 数据 - 一个名称对应一个值

JSON 数据格式为 键/值 对,就像 JavaScript 对象属性。

键/值对包括字段名称(在双引号中),后面一个冒号,然后是值:

"name":"Javathinker"

JSON 对象

JSON 对象保存在大括号内。

就像在 JavaScript 中, 对象可以保存多个 键/值 对:

{"name":"Javathinker", "url":"www.javathinker.net"}

JSON 数组

JSON 数组保存在中括号内。

就像在 JavaScript 中, 数组可以包含对象:

" sites " : [
     { " name " : " Javathinker " ,  " url " : " www.javathinker.net " } ,
     { " name " : " Google " ,  " url " : " www.google.com " } ,
     { " name " : " Taobao " ,  " url " : " www.taobao.com " }
]

在以上实例中,对象 "sites" 是一个数组,包含了三个对象。

每个对象为站点的信息(网站名和网站地址)。

JSON 字符串转换为 JavaScript 对象

     通常我们从服务器中读取 JSON 数据,并在网页中显示数据。

         简单起见,我们网页中直接设置 JSON 字符串  (你还可以阅读我们的 JSON 教程):

         首先,创建 JavaScript 字符串,字符串为 JSON 格式的数据:

var   text  =  ' { "sites" : [ '  +
' { "name":"Javathinker" , "url":"www.javathinker.net" }, '  +
' { "name":"Google" , "url":"www.google.com" }, '  +
' { "name":"Taobao" , "url":"www.taobao.com" } ]} ' ;

     然后,使用 JavaScript 内置函数 JSON.parse() 将字符串转换为 JavaScript 对象:

var obj = JSON.parse(text);

     最后,在你的页面中使用新的 JavaScript 对象:    

范例

    var   text  =  ' { "sites" : [ '  +
     ' { "name":"Javathinker" , "url":"www.javathinker.net" }, '  +
     ' { "name":"Google" , "url":"www.google.com" }, '  +
     ' { "name":"Taobao" , "url":"www.taobao.com" } ]} ' ;
    
    obj  =  JSON . parse ( text ) ;
    document . getElementById ( " demo " ) . innerHTML  =  obj . sites [ 1 ] . name  +  "   "  +  obj . sites [ 1 ] . url ;

程序猿的技术大观园:www.javathinker.net



[这个贴子最后由 admin 在 2020-02-01 16:57:24 重新编辑]
网站系统异常


系统异常信息
Request URL: http://www.javathinker.net/WEB-INF/lybbs/jsp/topic.jsp?postID=1945

java.lang.NullPointerException

如果你不知道错误发生的原因,请把上面完整的信息提交给本站管理人员