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 相关文章推荐
JavaScript instanceof 的使用方法示例介绍
Oct 23 Javascript
利用js判断浏览器类型(是否为IE,Firefox,Opera浏览器)
Nov 22 Javascript
Javascript简单改变表单元素背景的方法
Jul 15 Javascript
实例讲解jQuery EasyUI tree中state属性慎用
Apr 01 Javascript
JavaScript语言精粹经典实例(整理篇)
Jun 07 Javascript
jQuery仿写百度百科的目录树
Jan 03 Javascript
利用JS制作万年历的方法
Aug 16 Javascript
echarts设置图例颜色和地图底色的方法实例
Aug 01 Javascript
Vue 中对图片地址进行拼接的方法
Sep 03 Javascript
五分钟搞懂Vuex实用知识(小结)
Aug 12 Javascript
js实现右键弹出自定义菜单
Sep 08 Javascript
vue 自定指令生成uuid滚动监听达到tab表格吸顶效果的代码
Sep 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
PHP判断远程url是否有效的几种方法小结
2011/10/08 PHP
php自定义函数截取汉字长度
2014/05/15 PHP
PHP中is_dir()函数使用指南
2015/05/08 PHP
详解PHP的Laravel框架中Eloquent对象关系映射使用
2016/02/26 PHP
阿里云的WindowsServer2016上部署php+apache
2018/07/17 PHP
JavaScript类和继承 this属性使用说明
2010/09/03 Javascript
jQuery中attr()和prop()在修改checked属性时的区别
2014/07/18 Javascript
基于JS实现的随机数字抽签实例
2016/12/08 Javascript
理解nodejs的stream和pipe机制的原理和实现
2017/08/12 NodeJs
基于jQuery实现的单行公告活动轮播效果
2017/08/23 jQuery
利用ECharts.js画K线图的方法示例
2018/01/10 Javascript
vue项目中使用tinymce编辑器的步骤详解
2018/09/11 Javascript
使用Layui搭建后台管理界面的操作方法
2019/09/20 Javascript
VUE使用axios调用后台API接口的方法
2020/08/03 Javascript
[03:26]《DAC最前线》之EG经理自述DOTA2经历
2015/02/02 DOTA
[02:01]2018完美盛典-开场舞《双子星》
2018/12/16 DOTA
Python实用日期时间处理方法汇总
2015/05/09 Python
python结合opencv实现人脸检测与跟踪
2015/06/08 Python
浅谈python中的数字类型与处理工具
2017/08/02 Python
使用python对excle和json互相转换的示例
2018/10/23 Python
Python 虚拟空间的使用代码详解
2019/06/10 Python
python 调用pyautogui 实时获取鼠标的位置、移动鼠标的方法
2019/08/27 Python
使用Python进行防病毒免杀解析
2019/12/13 Python
python有序查找算法 二分法实例解析
2020/02/18 Python
python GUI库图形界面开发之PyQt5中QWebEngineView内嵌网页与Python的数据交互传参详细方法实例
2020/02/26 Python
python输出第n个默尼森数的实现示例
2020/03/08 Python
浅析Django 接收所有文件,前端展示文件(包括视频,文件,图片)ajax请求
2020/03/09 Python
python脚本第一行如何写
2020/08/30 Python
Pandas替换及部分替换(replace)实现流程详解
2020/10/12 Python
详解python百行有效代码实现汉诺塔小游戏(简约版)
2020/10/30 Python
Champion官网:美国冠军运动服装
2017/01/25 全球购物
村长贪污检举信
2014/04/04 职场文书
会计稽核岗位职责
2015/04/13 职场文书
小学秋季运动会通讯稿
2015/11/25 职场文书
2016秋季校长开学典礼致辞
2015/11/26 职场文书
go mod 安装依赖 unkown revision问题的解决方案
2021/05/06 Golang