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

前端技术 2023/09/04 JavaScript

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对象的简单实现方法全部内容了,希望大家多多支持phpstudy~

本文地址:https://www.stayed.cn/item/10175

转载请注明出处。

本站部分内容来源于网络,如侵犯到您的权益,请 联系我

我的博客

人生若只如初见,何事秋风悲画扇。