json对象与数组以及转换成js对象的简单实现方法


Posted in Javascript onJune 24, 2016

JSON 语法规则

JSON 语法是 JavaScript 对象表示法语法的子集。

•数据在名称/值对中
•数据由逗号分隔
•花括号保存对象
•方括号保存数组

JSON 对象

JSON 对象在花括号中书写:

对象可以包含多个名称/值对:

{ "firstName":"John" , "lastName":"Doe" }

这一点也容易理解,与这条 JavaScript 语句等价:

firstName = "John"
lastName = "Doe"

JSON 数组

JSON 数组在方括号中书写:

数组可包含多个对象:

{ 
"employees": [ 
{ "firstName":"John" , "lastName":"Doe" }, 
{ "firstName":"Anna" , "lastName":"Smith" }, 
{ "firstName":"Peter" , "lastName":"Jones" } 
] 
}

在上面的例子中,对象 "employees" 是包含三个对象的数组。每个对象代表一条关于某人(有姓和名)的记录。

JSON 文件

•JSON 文件的文件类型是 ".json"
•JSON 文本的 MIME 类型是 "application/json"

JSON文本转换为 JavaScript 对象

JavaScript 函数 eval() 可用于将 JSON 文本转换为 JavaScript 对象。

eval() 函数使用的是 JavaScript 编译器,可解析 JSON 文本,然后生成 JavaScript 对象。必须把文本包围在括号中,这样才能避免语法错误:
var obj = eval ("(" + jsontxt + ")");

示例:

$.ajax({
    type: 'POST',
    url: '../../caseHandler.ashx?action=GetCase&id=' + id.toString(), //url action是方法的名称
    data: "",
    dataType: "text", //可以是text,如果用text,返回的结果为字符串;如果需要json格式的,可以设置为json
    ContentType: "application/json; charset=utf-8",
    success: function (returnedData) {
      getMarkerFeature(eval("(" + returnedData+ ")"));
    },
    error: function (msg) {
      alert("访问失败:"+ msg);
    }
  });

通过JavaScript创建对象数组

var employees = [
{ "firstName":"Bill" , "lastName":"Gates" },
{ "firstName":"George" , "lastName":"Bush" },
{ "firstName":"Thomas" , "lastName": "Carter" }
];

JavaScript对象属性访问的两种方式

object.attribute

object["attribute"]

例如:

var employees = [
{ "firstName":"Bill" , "lastName":"Gates" },
{ "firstName":"George" , "lastName":"Bush" },
{ "firstName":"Thomas" , "lastName": "Carter" }
];
alert(employees[0].lastName); // 方式一
alert(employees[0]["lastName"]); // 方式二

以上就是小编为大家带来的json对象与数组以及转换成js对象的简单实现方法全部内容了,希望大家多多支持三水点靠木~

Javascript 相关文章推荐
jQuery数组处理代码详解(含实例演示)
Feb 03 Javascript
基于jquery的放大镜效果
May 30 Javascript
js判断运行jsp页面的浏览器类型以及版本示例
Oct 30 Javascript
12个非常实用的JavaScript小技巧【推荐】
May 18 Javascript
jQuery实现查找链接文字替换属性的方法
Jun 27 Javascript
基于angular实现三级联动的生日插件
May 12 Javascript
Angular+Bootstrap+Spring Boot实现分页功能实例代码
Jul 21 Javascript
vue proxyTable 接口跨域请求调试的示例
Sep 12 Javascript
Vue利用History记录上一页面的数据方法实例
Nov 02 Javascript
js中数组对象去重的两种方法
Jan 18 Javascript
layui 选择列表,打勾,点击确定返回数据的例子
Sep 02 Javascript
node.js如何自定义实现一个EventEmitter
Jul 16 Javascript
jQuery实现点击弹出背景变暗遮罩效果实例代码
Jun 24 #Javascript
JS控制文本域只读或可写属性的方法
Jun 24 #Javascript
jQuery插件扩展extend的简单实现原理
Jun 24 #Javascript
jQuery设置单选按钮radio选中/不可用的实例代码
Jun 24 #Javascript
jQuery给div,Span, a ,button, radio 赋值与取值
Jun 24 #Javascript
jQuery模仿单选按钮选中效果
Jun 24 #Javascript
JS实现iframe编辑器光标位置插入内容的方法(兼容IE和Firefox)
Jun 24 #Javascript
You might like
Linux下安装PHP MSSQL扩展教程
2014/10/24 PHP
PHP检测接口Traversable用法详解
2017/12/29 PHP
如何在PHP中生成随机数
2020/06/04 PHP
JQuery处理json与ajax返回JSON实例代码
2014/01/03 Javascript
jQuery中选择器小问题(新人难免遇到)
2014/03/31 Javascript
使用jquery解析XML示例代码
2014/09/05 Javascript
Javascript连接Access数据库完整实例
2015/08/03 Javascript
Jquery幻灯片特效代码分享--打开页面随机选择切换方式(3)
2015/08/15 Javascript
javascript数组克隆简单实现方法
2015/12/16 Javascript
基于jquery编写分页插件
2016/03/07 Javascript
JS实现屏蔽网页右键复制及ctrl+c复制的方法【2种方法】
2016/09/04 Javascript
微信小程序 富文本转文本实例详解
2016/10/24 Javascript
jQuery插件HighCharts绘制2D带有Legend的饼图效果示例【附demo源码下载】
2017/03/10 Javascript
Bootstrap DateTime Picker日历控件简单应用
2017/03/25 Javascript
使用jQuery ajaxupload插件实现无刷新上传文件
2017/04/23 jQuery
jquery实现左右轮播图效果
2017/09/28 jQuery
vue实现组件之间传值功能示例
2018/07/13 Javascript
JS获取本地地址及天气的方法实例小结
2019/05/10 Javascript
基于VUE实现判断设备是PC还是移动端
2020/07/03 Javascript
Python外星人入侵游戏编程完整版
2020/03/30 Python
Pandas:DataFrame对象的基础操作方法
2018/06/07 Python
python 找出list中最大或者最小几个数的索引方法
2018/10/30 Python
详解Python3 基本数据类型
2019/04/19 Python
基于Python2、Python3中reload()的不同用法介绍
2019/08/12 Python
虚拟环境及venv和virtualenv的区别说明
2021/02/05 Python
顶岗实习计划书
2014/01/10 职场文书
商场总经理岗位职责
2014/02/03 职场文书
护士求职自荐信范文
2014/03/19 职场文书
公司踏青活动方案
2014/08/16 职场文书
钱塘江大潮导游词
2015/02/03 职场文书
售票员岗位职责
2015/02/15 职场文书
开除员工通知
2015/04/22 职场文书
飞屋环游记观后感
2015/06/08 职场文书
2016年读书月活动总结范文
2016/04/06 职场文书
2019年入党思想汇报格式与要求
2019/06/25 职场文书
详解MySQL的半同步
2021/04/22 MySQL