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的漂亮的代码片段
Jun 05 Javascript
js修改input的type属性问题探讨
Oct 12 Javascript
jquery mobile动态添加元素之后不能正确渲染解决方法说明
Mar 05 Javascript
javascript的BOM汇总
Jul 16 Javascript
使用JavaScript和CSS实现文本隔行换色的方法
Nov 04 Javascript
js实现的彩色方块飞舞奇幻效果
Jan 27 Javascript
AngularJs 国际化(I18n/L10n)详解
Sep 01 Javascript
js中的事件委托或是事件代理使用详解
Jun 23 Javascript
小程序扫描普通链接二维码跳转小程序指定界面方法
May 07 Javascript
vue实现输入框自动跳转功能
May 20 Javascript
如何使用vue slot创建一个模态框的实例代码
May 24 Javascript
javascript实现评分功能
Jun 24 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
array_multisort实现PHP多维数组排序示例讲解
2011/01/04 PHP
php实现SAE上使用storage上传与下载文件的方法
2015/06/29 PHP
修改PHP脚本使WordPress拦截垃圾评论的方法示例
2015/12/10 PHP
php post json参数的传递和接收处理方法
2018/05/31 PHP
PHP常见数组排序方法小结
2018/08/20 PHP
YII框架行为behaviors用法示例
2019/04/26 PHP
ExtJS 2.0实用简明教程 之ExtJS版的Hello
2009/04/29 Javascript
jQuery+.net实现浏览更多内容(改编php版本)
2013/03/28 Javascript
用原生JS获取CLASS对象(很简单实用)
2014/10/15 Javascript
如何根据百度地图计算出两地之间的驾驶距离(两种语言js和C#)
2015/10/29 Javascript
jquery实现刷新随机变化样式特效(tag标签样式)
2017/02/03 Javascript
实例解析js中try、catch、finally的执行规则
2017/02/24 Javascript
js常用的继承--组合式继承
2017/03/06 Javascript
vue-cli如何快速构建vue项目
2017/04/26 Javascript
详解webpack + vue + node 打造单页面(入门篇)
2017/09/23 Javascript
jQuery实现点击下拉框中的值累加到文本框中的方法示例
2017/10/28 jQuery
搭建vue开发环境
2018/07/19 Javascript
详解如何用typescript开发koa2的二三事
2018/11/13 Javascript
微信小程序自定义navigationBar顶部导航栏适配所有机型(附完整案例)
2020/04/26 Javascript
解决vue项目运行npm run serve报错的问题
2020/10/26 Javascript
全面解析js中的原型,原型对象,原型链
2021/01/25 Javascript
梯度下降法介绍及利用Python实现的方法示例
2017/07/12 Python
python实现定时发送qq消息
2019/01/18 Python
Python 实现opencv所使用的图片格式与 base64 转换
2020/01/09 Python
Python2与Python3的区别详解
2020/02/09 Python
Python批量启动多线程代码实例
2020/02/18 Python
python接口自动化之ConfigParser配置文件的使用详解
2020/08/03 Python
联想哥伦比亚网上商城:Lenovo Colombia
2017/01/10 全球购物
英国工具中心:UK Tool Centre
2017/07/10 全球购物
Bowflex美国官方网站:高级家庭健身器材
2017/12/22 全球购物
经济学人订阅:The Economist
2018/07/19 全球购物
澳大利亚有机化妆品网上商店:The Well Store
2020/02/20 全球购物
人力资源管理毕业生自荐信
2013/11/21 职场文书
保密承诺书
2014/03/27 职场文书
还在手动盖楼抽奖?教你用Python实现自动评论盖楼抽奖(一)
2021/06/07 Python
python 单机五子棋对战游戏
2022/04/28 Python