Javascript(JS)中的大括号{}和中括号[]详解
一、{ } 大括号,表示定义一个对象,大部分情况下要有成对的属性和值,或是函数。
如:var LangShen = {"Name":"Langshen","AGE":"28"};
上面声明了一个名为“LangShen”的对象,属性名和值用(冒号)隔开,多个属性或函数用,(逗号)隔开,因为是对象的属性,
所以访问时,应该用.(点)来层层访问:LangShen.Name、LangShen.AGE,当然我们也可以用数组的方式来访问,如:LangShen["Name"]、LangShen["AGE"],结果是一样的。
该写法,在JSON数据结构中经常用,除此之外,我们平时写函数组的时候,也经常用到,如:
var LangShen = {
Name = function(){
return "LangShen";
},
Age = function(){
return "28";
}
}
调用方式差不多,因为是函数组,所以要加上(),如:alert( LangShen.Name() );
二、[ ]中括号,表示一个数组,也可以理解为一个数组对象。
如:var LangShen = [ "Name","LangShen","AGE","28" ];
很明显,每个值或函数,都是独立的,多个值之间只用,(逗号)隔开,因为是数组对象,所以它等于:
var LangShen = Array( "Name","LangShen","AGE","28" );
访问时,也是和数组一样,alert( LangShen[0] );
三、{ } 和[ ] 一起使用,我们前面说到,{ } 是一个对象,[ ] 是一个数组,我们可以组成一个对象数组,如:
var LangShen = { "Name":"Langshen",
"MyWife":[ "LuLu","26" ],
"MySon":[{"Name":"Son1"},{"Name":"Son2"},{"Name":"Son3"}]
}
从上面的结构来看,是一个对象里面的第一项是个属性,第二项是一个数组,第三个是包含有多个对象的数组。调用起来,也是一层一层访问,对象的属性用.(点)叠加,数组用 [下标] 来访问。
如:alert( LangShen.MySon[1].Name ) ;
JSON入门指南:http://www.ibm.com/developerworks/cn/web/wa-lo-json/?ca=drs-tp3308
转载:http://blog.163.com/xiao_mege/blog/static/729427532010101041223570/
Javascript(JS)中的大括号{}和中括号[]详解的更多相关文章
- JS中的函数节流throttle详解和优化
JS中的函数节流throttle详解和优化在前端开发中,有时会为页面绑定resize事件,或者为一个页面元素绑定拖拽事件(mousemove),这种事件有一个特点,在一个正常的操作中,有可能在一个短的 ...
- Node.js中环境变量process.env详解
Node.js中环境变量process.env详解process | Node.js API 文档http://nodejs.cn/api/process.html官方解释:process 对象是一个 ...
- js中的preventDefault与stopPropagation详解
本篇文章主要是对js中的preventDefault与stopPropagation进行了介绍,需要的朋友可以过来参考下,希望对大家有所帮助 首先讲解一下js中preventDefault和stopP ...
- javascript变量中基本类型和引用类型的详解解读
前言: Javascript语言中的变量和其他语言的变量有很大区别,javascript松散类型的本质,决定了它只是在特定时间时间保存特定值得名字而已.由于不存在定义某个变量必须保存何种数据类型值的规 ...
- 现代JS中的流程控制:详解Callbacks 、Promises 、Async/Await
JavaScript经常声称是_异步_.那是什么意思?它如何影响发展?近年来这种方法有何变化? 请思考以下代码: result1 = doSomething1(); result2 = doSomet ...
- js中caller和callee属性详解
一.caller属性返回一个对函数的引用,该函数调用了当前函数.functionName.callerfunctionName 对象是所执行函数的名称.说明对于函数来说,caller 属性只有在函数执 ...
- JavaScript中的鼠标滚轮事件详解
JavaScript中的鼠标滚轮事件详解/*Firefox注册事件*/ ~~~Firefox: addEventListener('DOMMouseScroll', handler, false)if ...
- php_DWZ-JUI中碰到的问题解决方法详解(thinkphp+dwz)
原文:php_DWZ-JUI中碰到的问题解决方法详解(thinkphp+dwz) 折腾了两天,dwz删除后,数据不能自动刷新,解决方案,直接看图 . 1. 删除.修改状态后无法刷新记录: 在dwz. ...
- 前端后台以及游戏中使用Google Protocol Buffer详解
前端后台以及游戏中使用Google Protocol Buffer详解 0.什么是protoBuf protoBuf是一种灵活高效的独立于语言平台的结构化数据表示方法,与XML相比,protoBuf更 ...
随机推荐
- Specialized Four-Digit Numbers
Problem Description Find and list all four-digit numbers in decimal notation that have the property ...
- TCP/IP协议原理与应用笔记20:直接交付 和 间接交付
1. 直接交付 和 间接交付 直接交付:分组的目的与分组的发送接口在同一个IP网络中 间接交付:分组的目的与分组的发送接口在不同的IP网络中 如图: 2. 交付过程: (1)交付方式判别 分组的目的I ...
- Java基础知识强化之IO流笔记82:NIO之 Pipe(管道)
1. Java NIO 管道是2个线程之间的单向数据连接.Pipe有一个source通道和一个sink通道.数据会被写到sink通道,从source通道读取. 这里是Pipe原理的图示: 2. Pip ...
- 【阿里云产品公测】一句话告诉你什么样的人该使用ACE,如何使用ACE
作者:阿里云用户小鸡咕咕 首先回应标题,这一句话就是:看完这篇帖子你就知道了. 前言 写在文章之前,我想先阐述一下写这篇文章的意义.可能大伙就要说了,写这篇文章不就是为了200的代金券吗?错, ...
- 【阿里云产品公测】ACE安装wordpress博客图文教程
作者:阿里云用户51干警网 阿里云ace搭建wordpress图文教程 按照大大说的,wordpress确实能够轻松创建,只有几步. 我想说,小白的世界技术大大还是不了解.想当初我了解一下怎么 ...
- java jdbc连接mysql
JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口 ...
- 微软测试版Visual Studio for Mac下载
地址:https://www.visualstudio.com/thank-downloading-visual-studio-mac/?sku=vsmac#
- AspNetPager学习使用2
接上回: <webdiyer:aspnetpager id=" FirstPageText="首页"LastPageText="尾页" Next ...
- ORACLE之表
本文章中的表在以后的例子中会用到. 首先有t_fn_person和t_fn_dept表. ) primary key not null, person_code ) not null, person_ ...
- Part 7Handling events in AngularJS
Let us understand with an example. Here is what we want to do. 1. Display the list of technologies i ...