JSON获取属性值方法代码实例


Posted in Javascript onJune 30, 2020

JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。易于人阅读和编写。同时也易于机器解析和生成。它基于JavaScript(Standard ECMA-262 3rd Edition - December 1999)的一个子集。

JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C, C++, C#, Java, JavaScript, Perl, Python等)。

这些特性使JSON成为理想的数据交换语言。其属性值的获取有三种方法

1. 对象名.属性名, 类似于高级语言的写法

var obj = '{"name":"wisdo", "age":"20"}';
var data = eval('('+ obj +')');
alert(obj.name);

2. 以数组索引的方式来访问

var obj = '{"name":"wisdo", "age":"20"}';
var data = eval('('+ obj +')');
alert(obj[0]); // 输出的是 name

3. 以字典索引的方式来访问

var obj = '{"name":"wisdo", "age":"20"}';
var data = eval('('+ obj +')');
alert(obj['name']); // 输出的是 name 值

在通常的情况下,一般是使用第一种方法,即通过对象名.属性名 的方式来访问,这样对于使用高级语言的编程很直观,也很容易理解,但这也有局限性,属性的名称要规范,key 要以字母或下划线开头的包括字母、下划线和数字的字符串,不能以数字开头.

总结

data.key和data['key']各自有自己的应用场景,一般情况使用data.key即可,也比较直观(它符合其它高级语言中访问对象中属性的方式);当key为一个变量时,并且使用在循环中,用data['key']这种方式。

for(var i=0; i < 10; i++) {
s += data['key' + i]; //循环调用,可简化代码}

以数组索引的方式来访问,虽然不推荐,但也是有其应用价值的;如当建立一个与数据库中id一一对应的map对象的时候,可直接用id的数值做key,虽然你可以给它加上一个字母前缀来让它符合合法的变量名的标准并让它的数据能通过data.key的方式访问.

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javascript第一课
Feb 27 Javascript
jQuery中RadioButtonList的功能及用法实例介绍
Aug 23 Javascript
JavaScript框架(iframe)操作总结
Apr 16 Javascript
对比分析json及XML
Nov 28 Javascript
使用AngularJS对路由进行安全性处理的方法
Jun 18 Javascript
jQuery实现类似老虎机滚动抽奖效果
Aug 06 Javascript
页面get请求 中文参数方法乱码问题的快速解决方法
May 31 Javascript
页面缩放兼容性处理方法(zoom,Firefox火狐浏览器)
Aug 29 Javascript
es6中比较有用的7个技巧小结
Jul 12 Javascript
JS中如何轻松遍历对象属性的方式总结
Aug 06 Javascript
Vue 3.0双向绑定原理的实现方法
Oct 23 Javascript
vuex实现数据状态持久化
Nov 11 Javascript
JS猜数字游戏实例讲解
Jun 30 #Javascript
vue实现评价星星功能
Jun 30 #Javascript
Json实现传值到后台代码实例
Jun 30 #Javascript
vue实现循环滚动列表
Jun 30 #Javascript
js实现简单音乐播放器
Jun 30 #Javascript
angular中的post请求处理示例详解
Jun 30 #Javascript
vue开发简单上传图片功能
Jun 30 #Javascript
You might like
探讨:如何使用PhpDocumentor生成文档
2013/06/25 PHP
php查询mysql数据库并将结果保存到数组的方法
2015/03/18 PHP
针对多用户实现头像上传功能PHP代码 适用于登陆页面制作
2016/08/17 PHP
PHP中的访问修饰符简单比较
2019/02/02 PHP
javascript 模拟JQuery的Ready方法实现并出现的问题
2009/12/06 Javascript
基于jquery的下拉框改变动态添加和删除表格实现代码
2020/09/12 Javascript
eval的两组性能测试数据
2012/08/17 Javascript
用JS提交参数创建form表单在FireFox中遇到的问题
2013/01/16 Javascript
Query中click(),bind(),live(),delegate()的区别
2013/11/19 Javascript
Jquery Ajax方法传值到action的方法
2014/05/11 Javascript
jQuery 3.0中存在问题及解决办法
2016/07/15 Javascript
javascript 解决浏览器不支持的问题
2016/09/24 Javascript
jQuery插件HighCharts绘制2D带Label的折线图效果示例【附demo源码下载】
2017/03/08 Javascript
深入浅出webpack之externals的使用
2017/12/04 Javascript
vue.js项目nginx部署教程
2018/04/05 Javascript
Vue2.0点击切换类名改变样式的方法
2018/08/22 Javascript
使用Vue父子组件通信实现todolist的功能示例代码
2019/04/11 Javascript
vue 实现单选框设置默认选中值
2019/11/07 Javascript
Vue项目前后端联调(使用proxyTable实现跨域方式)
2020/07/18 Javascript
[01:07:22]2014 DOTA2华西杯精英邀请赛 5 24 DK VS VG加赛
2014/05/26 DOTA
[01:56]无止竞 再出发——中国军团出征2017年DOTA2国际邀请赛
2017/07/05 DOTA
Python把csv数据写入list和字典类型的变量脚本方法
2018/06/15 Python
Tensorflow加载预训练模型和保存模型的实例
2018/07/27 Python
python 实现A*算法的示例代码
2018/08/13 Python
Python3 修改默认环境的方法
2019/02/16 Python
docker-py 用Python调用Docker接口的方法
2019/08/30 Python
python模块hashlib(加密服务)知识点讲解
2019/11/25 Python
中国最大的名表商城:万表网
2016/08/29 全球购物
法国女性内衣购物网站:Glamuse
2019/05/13 全球购物
财务科科长岗位职责
2014/03/10 职场文书
教师竞聘演讲稿
2014/05/16 职场文书
幼儿园教师师德师风演讲稿:爱我所爱 无悔青春
2014/09/10 职场文书
群众路线教师自我剖析材料
2014/09/29 职场文书
学前教育见习总结
2015/06/23 职场文书
幼儿园2016年圣诞活动总结
2016/03/31 职场文书
详解MongoDB的条件查询和排序
2021/06/23 MongoDB