json数据定义和引用
来源:互联网 发布:电暖器 知乎 编辑:程序博客网 时间:2024/06/05 14:25
下述代码在Chrome49、firefox45、IE11、IE8中测试。
1、定义
查了w3school.com.cn,json的定义有两种方法:
eval解析:
var jsn1='({"aa":"22",bb:"00"})';var jsna= eval(jsn1); alert(jsna.bb);alert(jsna["bb"]);注意jsn1是字符串,且首尾要有(),否则报错。name可以不用双引号引起来。
json解析:
var jsn2='{"aa":"22","bb":"00"}';var jsnb= JSON.parse(jsn2);alert(jsnb.bb);alert(jsnb["bb"]);注意name必须用双引号引起来,否则不能解析。
2、调用
从上可知,“.”和“[]”都可调用
3、重载
var jsn2='{"aa":"22","aa":"00"}';上述代码aa将变为00,也就是可以被重新赋值。不管是eval方式(需要eval时加括号)还是json解析方式。
4、其他东西
看下面的代码:
var jsn1={aa:"11","aa":"22"} alert(jsn1.aa); var jsn2={"aa":"22",aa:"11"} alert(jsn2.aa);
上述代码都能弹出22。但代码与之前不同:jsn1和jsn2不再是字符串,而是直接用大括号定义。也就是说,jsn1和jsn2是对象。
var jsn0={aa:11,bb:function(d){d?alert(d):alert(1);return true},cc:jsna.bb};jsn0.bb(2);alert(jsn0.cc);上述代码,将弹出2和00。
如果alert(bb),则会弹出函数代码。而如果alert(bb()),则会首先执行bb()(弹出1),然后再弹出bb函数返回值true。
用对象定义,肯定能实现json但功能,但json的优势是:快速!。因此,能用json的时候,还是考虑优先用json。
0 0
- json数据定义和引用
- 定义json数据
- 引用、引用和术语定义
- 引用和术语定义
- php定义二维数组以及和JavaScript传递json数据
- 数据定义与引用逻辑
- json 定义和传值
- json数据避免$ref 循环引用
- 引用API返回Json数据的问题
- nodejs对于json数据的引用
- js中如何定义json数据
- JSON 格式数据的定义及操作
- 数据定义和查询
- java中几种引用类型的定义和区别。强引用,软引用,弱引用,虚引用
- 引用和宏定义的汇编实现
- 结构体数组的定义和引用
- 怎样定义和引用Mfc 全局变量
- MFC程序中定义和引用全局变量
- Android 6.0 运行时权限处理
- insert新建对象后,返回主键值
- BN: Accelerating Deep Network Training by Reducing Internal Covariate Shift
- Linux 如何卸载jdk
- centOS下安装mysql workbench详细步骤
- json数据定义和引用
- Freemarker 最简单的例子程序
- Shiro入门2:权限管理入门,用户认证、授权
- 浏览器全屏效果
- 利用Angular.js从PHP读取后台数据
- 下载w3schools图片
- 后台页面相同模块(导航条等)的处理
- android解压zip格式包的方法
- mysql/Java服务端对emoji的支持