专家学者对于JavaScript解释进行详细说明
创始人
2024-06-19 22:30:58
0

下面进行大致的分析JavaScript解释:JSON 可以将 JavaScript 对象中表示的一组数据转换为字符串,然后就可以在函数之间轻松地传递这个字符串,或者在异步应用程序中将字符串从 Web 客户机传递给服务器端程序。

这个字符串看起来有点儿古怪(稍后会看到几个示例),按照最简单的形式,可以用下面这样的 JSON 表示名称/值对:

  1. { "firstName": "Brett" }   

这个示例非常基本,而且实际上比等效的纯文本名称/值对占用更多的空间:

  1. firstName=Brett 

但是,当将多个名称/值对串在一起时,JSON 就会体现出它的价值了。首先,可以创建包含多个名称/值对的记录,比如:

  1. { "firstName": "Brett", "lastName":"McLaughlin", "email": "brett@newInstance.com" } 

从语法方面来看,这与名称/值对相比并没有很大的优势,但是在这种情况下JavaScript解释更容易使用,而且可读性更好。例如,它明确地表示以上三个值都是同一记录的一部分;花括号使这些值有了某种联系#t#

当需要表示一组值时,JSON 不但能够提高可读性,而且可以减少复杂性。例如,假设您希望表示一个人名列表。在 XML 中,需要许多开始标记和结束标记;如果使用典型的名称/值对(就像在本系列前面文章中看到的那种名称/值对),那么必须建立一种专有的数据格式,或者将键名称修改为 person1-firstName 这样的形式。

如果使用JavaScript解释,就只需将多个带花括号的记录分组在一起:

  1. { "people": [ { "firstName": "Brett", "lastName":"McLaughlin", 
  2. "email": "brett@newInstance.com" }, { "firstName": "Jason", "lastName":"Hunter", "email": "jason@servlets.com" },
  3.  { "firstName": "Elliotte", "lastName":"Harold", "email": "elharo@macfaq.com" }]}  

这不难理解。在这个示例中,只有一个名为 people 的变量,值是包含三个条目的数组,每个条目是一个人的记录,其中包含名、姓和电子邮件地址。上面的示例演示如何用括号将记录组合成一个值。当然,可以使用相同的语法表示多个值(每个值包含多个记录):

  1. { "programmers": [ { "firstName": "Brett", "lastName":"McLaughlin", 
  2. "email": "brett@newInstance.com" }, { "firstName": "Jason", 
  3. "lastName":"Hunter", "email": "jason@servlets.com" }, 
  4. { "firstName": "Elliotte", "lastName":"Harold", "email": "elharo@macfaq.com" } ]
  5. ,"authors": [ { "firstName": "Isaac", "lastName": "Asimov", "genre": "science fiction" },
  6.  { "firstName": "Tad", "lastName": "Williams", "genre": "fantasy" }, 
  7. { "firstName": "Frank", "lastName": "Peretti", "genre": "christian fiction" } ],"musicians":
  8.  [ { "firstName": "Eric", "lastName": "Clapton", "instrument": "guitar" }, 
  9. { "firstName": "Sergei", "lastName": "Rachmaninoff", "instrument": "piano" } ]} 

相关内容

热门资讯

如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
施耐德电气数据中心整体解决方案... 近日,全球能效管理专家施耐德电气正式启动大型体验活动“能效中国行——2012卡车巡展”,作为该活动的...
Windows恶意软件20年“... 在Windows的早期年代,病毒游走于系统之间,偶尔删除文件(但被删除的文件几乎都是可恢复的),并弹...
20个非常棒的扁平设计免费资源 Apple设备的平面图标PSD免费平板UI 平板UI套件24平图标Freen平板UI套件PSD径向平...
德国电信门户网站可实时显示全球... 德国电信周三推出一个门户网站,直观地实时提供其安装在全球各地的传感器网络检测到的网络攻击状况。该网站...
着眼MAC地址,解救无法享受D... 在安装了DHCP服务器的局域网环境中,每一台工作站在上网之前,都要先从DHCP服务器那里享受到地址动...
为啥国人偏爱 Mybatis,... 关于 SQL 和 ORM 的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行...