JavaScript中对JSON对象的基本操作示例


Posted in Javascript onMay 21, 2016

JSON对象

1、对象的属性:
对象的属性是有键值对组成的,其中key为一个字符串,value可以为任何的Javascript对象。

//使用[]设置和获取对象的属性
var obj = new Object();
obj["3water.com"] = "https://3water.com";
alert(obj["3water.com"]);

2、变量既是属性:
Javascript引擎在初始化时会构建一个全局对象,所有的变量都是这个全局对象的属性。为了引用这个全局对象,可以再顶级作用域中这样获取:

var global = this;

在Javascript中,任何独立的函数或者变量都属于这个对象的属性,即:

function test(){}

相当于:

window.test = function(){}

3、使用对象:
声明对象的三种方式:

① 通过new操作符创建一个Object对象,然后动态地添加属性,从无到有构造一个对象
② 定义对象的类圆形,然后使用new操作符来批量构造新的对象

//创建一个对象
function User(username, password){
  this.username = username;
  this.password = password;
  this.getUsername = function(){
    return this.username;
  }
  this.getPassword = function(){
    return this.password;
  }
}
var arthinking = new User("Jason", "123");
alert(arthinking.getUsername());
alert(arthinking.getPassword());

③ 使用JSON构造对象
JSON即Javascript对象表示方法(Javascript Object Notation),也就是通过字面量来表示一个对象:

//JSON形式创建一个对象
var arthinking = {
  username : "Jason",
  password : "123",
  favorite : {
    sports : "football",
    music : "Guitar"
  }
}
alert(arthinking.username);
alert(arthinking.favorite.sports);

解析由服务器返回的JSON格式数据
单个JSON对象:

[{a:'1',b'2'},{a:'3',b'4'}]

多个JSON对象:

{
"usergroups":[{a:'001',b:'arthinking'},a:'002',b:'Jason'}],
"groups":[{c:'001',d:'IT宅'}]
}

可以根据这种格式先从后台封装好需要传递的数据,前台获取到后可以这样解析获取数据:

//假设response.responseText为返回的JSON字符串
//可以使用eval()函数把JSON字符串转换成Javascript语句
//再通过”.”导航获取具体属性,length属性为对象的长度
var obj = eval( "(" + response.responseText + ")" );
for(var i = 0; i<obj.usergroups.length; i++){
  var groupid = obj.usergroups[i].a;
  var usergroup=obj.groups;
  for(var j=0; j<usergroup.length; j++){
    if(usergroup[j].c == groupid){
      alert(groupid);
 }
  }
}
Javascript 相关文章推荐
JavaScript在IE和Firefox(火狐)的不兼容问题解决方法小结
Apr 13 Javascript
Jquery常用技巧收集整理篇
Nov 14 Javascript
js查错流程归纳
May 04 Javascript
jQuery构造函数init参数分析
May 13 Javascript
JavaScript中用let语句声明作用域的用法讲解
May 20 Javascript
javascript淘宝主图放大镜功能
Oct 20 Javascript
Vue.js搭建移动端购物车界面
Jun 28 Javascript
微信小程序实现漂亮的弹窗效果
May 26 Javascript
vue设计一个倒计时秒杀的组件详解
Apr 06 Javascript
jQuery实现倒计时功能完整示例
Jun 01 jQuery
JS实现audio音频剪裁剪切复制播放与上传(步骤详解)
Jul 28 Javascript
js+css实现扇形导航效果
Aug 18 Javascript
iscroll碰到Select无法选择下拉刷新的解决办法
May 21 #Javascript
jQuery EasyUI Pagination实现分页的常用方法
May 21 #Javascript
总结JavaScript设计模式编程中的享元模式使用
May 21 #Javascript
在JavaScript中模拟类(class)及类的继承关系
May 20 #Javascript
基于Node.js的JavaScript项目构建工具gulp的使用教程
May 20 #Javascript
JavaScript中用let语句声明作用域的用法讲解
May 20 #Javascript
如何用JavaScript实现动态修改CSS样式表
May 20 #Javascript
You might like
PHP的伪随机数与真随机数详解
2015/05/27 PHP
PHP实现的随机IP函数【国内IP段】
2016/07/20 PHP
PHP使用openssl扩展实现加解密方法示例
2020/02/20 PHP
javascript 词法作用域和闭包分析说明
2010/08/12 Javascript
EasyUI的treegrid组件动态加载数据问题的解决办法
2011/12/11 Javascript
利用javascript数组长度循环数组内所有元素
2013/12/27 Javascript
JavaScript中定义函数的三种方法
2015/03/12 Javascript
JavaScript实现常用二级省市级联下拉列表的方法
2015/03/25 Javascript
如何改进javascript代码的性能
2015/04/02 Javascript
js实现简单div拖拽功能实例
2015/05/12 Javascript
Jquery技巧(必须掌握)
2016/03/16 Javascript
fckeditor部署到weblogic出现xml无法读取及样式不能显示问题的解决方法
2017/03/24 Javascript
VSCode中如何利用d.ts文件进行js智能提示
2018/04/13 Javascript
layui radio性别单选框赋值方法
2018/08/15 Javascript
zepto.js 实时监听输入框的方法
2018/12/04 Javascript
JS实现轮播图效果
2020/01/11 Javascript
ssh批量登录并执行命令的python实现代码
2012/05/25 Python
python中装饰器级连的使用方法示例
2017/09/29 Python
python3实现字符串的全排列的方法(无重复字符)
2018/07/07 Python
如何利用python制作时间戳转换工具详解
2018/09/12 Python
python实现列表中最大最小值输出的示例
2019/07/09 Python
django将网络中的图片,保存成model中的ImageField的实例
2019/08/07 Python
python中p-value的实现方式
2019/12/16 Python
解决python 读取 log日志的编码问题
2019/12/24 Python
Python3交互式shell ipython3安装及使用详解
2020/07/11 Python
法国娇韵诗官方旗舰店:Clarins是来自法国的天然护肤品牌
2018/06/30 全球购物
POS解决方案:MUNBYN(热敏打印机、条形码扫描仪)
2020/06/09 全球购物
医学专业个人求职自荐信格式
2013/09/23 职场文书
房地产员工找工作的自我评价
2013/11/15 职场文书
中标通知书格式
2015/04/17 职场文书
傲慢与偏见电影观后感
2015/06/10 职场文书
2016年教师节特级教师获奖感言
2015/12/09 职场文书
2016年优秀教师先进事迹材料
2016/02/26 职场文书
创业计划书介绍
2019/04/24 职场文书
聊一聊Redis与MySQL双写一致性如何保证
2021/06/26 Redis
看完这篇文章获得一些java if优化技巧
2021/07/15 Java/Android