原文地址:https://www.cnblogs.com/zhangjingyun/p/4554054.html

我们都知道,json和数组一样,都可以存数据,但是下面我们来总结一下json和数组的区别。

<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>json</title>
<script type="text/javascript">
var json={a:12,b:5,c:7};
var arr=[12,5,7];
alert(json.a);
alert(arr[0]);
</script>
</head>
<body> </body>
</html>

我们知道任何.都可以用[ ]代替,于是

<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>json</title>
<script type="text/javascript">
var json={a:12,b:5,c:7};
var arr=[12,5,7];
alert(json['a']);
alert(arr[0]);
</script>
</head>
<body> </body>
</html>

于是,得出结论,json与数组的第一个区别,json的下标与数组的下标不一样,json的下标是字符串,数组的下标是数字。

同时,我们也知道,数组,有length;但是我们求json的数组的时候,发现,undefined,即,json没有length属性,那如何求json的length;

我们知道数组的循环有两种方法(1)

<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>json</title>
<script type="text/javascript">
var json={a:12,b:5,c:7};
var arr=[12,5,7];
for(i=0;i<arr.length;i++){
alert('第'+i+'个东西'+arr[i]);
} </script>
</head>
<body> </body>
</html>

但这种方法,因为json没有length,所以只能是放弃了

数组的另外一种方法循环(2)

for in循环

<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>json</title>
<script type="text/javascript">
var json={a:12,b:5,c:7};
var arr=[12,5,7];
for(var i in arr){
alert('第'+i+'个东西:'+arr[i]);
}
</script>
</head>
<body> </body>
</html>

可见,这里并没有出现length,那这种方法我们使用到json里试试。

<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>json</title>
<script type="text/javascript">
var json={a:12,b:5,c:7};
var arr=[12,5,7];
for(var i in json){
alert('第'+i+'个东西:'+json[i]);
}
</script>
</head>
<body> </body>
</html>

建议:

关于循环

数组:for 0-len

json: for in

json和数组的区别的更多相关文章

  1. json 和 数组的区别

    json是javascript中的一种数据格式,类似于数组,但又不同于数组,区别在于下标: 例如,var obj=[a:15,b:10,c:3,d:8]: //这是json的写法 var  arr=[ ...

  2. JSON语法、对象、遍历数组的区别和基本操作

    JSON 语法规则 JSON 语法是 javascript 对象表示语法的子集. 数据在名称/值对中 数据由逗号分隔 花括号保存对象 方括号保存数组 JSON 名称/值对 JSON 数据的书写格式是: ...

  3. JSON数组,JSON对象,数组的区别与基本操作整理

    JSON 语法规则 JSON 语法是 javascript 对象表示语法的子集. 数据在名称/值对中 数据由逗号分隔 花括号保存对象 方括号保存数组 JSON 名称/值对 JSON 数据的书写格式是: ...

  4. iOS - 分析JSON、XML的区别和解析方式的底层是如何实现的(延伸实现原理)

    <分析JSON.XML的区别,JSON.XML解析方式的底层是如何实现的(延伸实现原理)> (一)JSON与XML的区别: (1)可读性方面:基本相同,XML的可读性比较好: (2)可扩展 ...

  5. JSON与XML的区别比较(转)

    原文链接:JSON与XML的区别比较 1.定义介绍 (1).XML定义扩展标记语言 (Extensible Markup Language, XML) ,用于标记电子文件使其具有结构性的标记语言,可以 ...

  6. JSON与JS的区别以及转换

    JSON是什么?(JSON和JavaScript对象有什么区别?)如何把JS对象转化为JSON字符串,又如何把JSON字符串转化为JavaScript对象? JSON (JavaScript Obje ...

  7. org.json与json-lib的区别(补充 FastJson)

    org.json 是JSON国际组织官方推出的标准json解析方案,已经被 android sdk 纳入到标准内置类库,依赖项少,但直至API17版本SDK中,仅支持JSONObject与JSONAr ...

  8. C++中关于[]静态数组和new分配的动态数组的区别分析

    这篇文章主要介绍了C++中关于[]静态数组和new分配的动态数组的区别分析,很重要的概念,需要的朋友可以参考下 本文以实例分析了C++语言中关于[]静态数组和new分配的动态数组的区别,可以帮助大家加 ...

  9. json在php中的使用之如何转换json为数组

    <?php $json = '{"a":1,"b":2,"c":3,"d":4,"e":5}' ...

随机推荐

  1. 从Excel、CSV文件获取数据

    #region 从Excel获取数据 /// <summary> /// 从Excel获取数据 /// </summary> /// <param name=" ...

  2. css3实现自适应的3行,左右行固定宽度,中间自适应,要求先渲染中间部分

    https://blog.csdn.net/thqy39/article/details/73512478 https://www.cnblogs.com/ranzige/p/4097453.html ...

  3. Win10系列:C#应用控件基础17

    Popup控件 在应用程序中使用Popup控件时,通常会先将其设置为隐藏状态,当用户触发应用中已定义的事件时,Popup控件将以弹出窗口的方式显示相关信息来提示用户操作. 在XAML文件中,Popup ...

  4. 网络编程,socket

    1.网络编程 网络: TCP/IP 彼此之间遵守协议和规范!之间才能产生通信! IP: 每个人都有自己的身份证号! 用来标识我们网络中每一台计算机! IP地址= 网络地址 +主机地址 网络地址 :标识 ...

  5. Linux下安装Julia1.0.0

    MIT正式发布编程语言Julia 1.0:Python.R.C++三合一! 由于官方文档提示中安装的不是最新的Julia版本,官方的0.7版本安装方法为:                       ...

  6. ecmall 入口文件解析 引入了什么

    每一个框架都有自动载入的工具库,搜了半天也没搜到相关介绍,就自己看入口文件琢磨了一下, <?php define('ROOT_PATH', dirname(__FILE__)); //定义项目根 ...

  7. css布局与文档流的关系之float(浮动)

    所谓文档流,指元素在排版布局的过程中,元素会自动从左到右,从上到下的流式排列.脱离文档流呢,就是元素打乱了这个排列,或是从排版中拿走. 说到文档流呢,我们先来说一下元素,每个元素呢,都有display ...

  8. PTA——组合数

    PTA 7-48 求组合数 #include<stdio.h> double fact(int n); int main() { int m,n; int c; scanf("% ...

  9. ex_BSGS

    //author Eterna #define Hello the_cruel_world! #pragma GCC optimize(2) #include<iostream> #inc ...

  10. 全志A33开发板Linux内核定时器编程

    开发平台 * 芯灵思SinlinxA33开发板 淘宝店铺: https://sinlinx.taobao.com/ 嵌入式linux 开发板交流 QQ:641395230 Linux 内核定时器是内核 ...