以下是我一个同事写的代码,我看不懂是什么意思,是个数组吗,请大家看看,谢谢 var _qfGroups = {};
_qfGroups['cc_exp'] = {'cc_exp[M]': true, 'cc_exp[d]': true, 'cc_exp[Y]': true};
_qfGroups['cc_exp'] = {'cc_exp[M]': true, 'cc_exp[d]': true, 'cc_exp[Y]': true};
_qfGroups.cc_exp = new Object();
_qfGroups.cc_exp.M=true
_qfGroups.cc_exp.d=true
_qfGroups.cc_exp.Y= true
它的属性cc_exp又是一个对象
下面是对对象cc_exp的初始化设置
买书看吧~··或者去下个电子文档~··几乎都有介绍JSON数据
这个对象的结构是这样的:
var _qfGroups = {};// 利用字面量运算符{}创建一个新的对象,相当于var _qfGroups = new Object;
_qfGroups['cc_exp'] = {
'cc_exp[M]': true,
'cc_exp[d]' : true,
'cc_exp[Y]' : true
};
// 1. 为对象_qfGroups添加一个属性cc_exp对象
// 2. 对象_qfGroups.cc_exp仅包含三个属性:'cc_exp[M]', 'cc_exp[d]'和'cc_exp[Y]'
理论上JavaScript允许开发者即可使用[]操作符也可以使用.操作符为对象添加属性,但是有时不完全能用.运算符来访问,因为利用.运算符访问对象属性的前提是该属性的名称符合JavaScript变量的命名规范,显然类似于'cc_exp[M]'这种属性名称是不符合要求的。
故而以下试图访问对象属性的方式将导致失败:
_qfGroups['cc_exp'].cc_exp[M]; // doesn't work
_qfGroups['cc_exp'].cc_exp.M;// does't work
唯一能够访问对象_qfGroups['cc_exp']的所有属性的方法就是使用[]操作符,代码如下:
_qfGroups['cc_exp']['cc_exp[M]']; // OK, no prolem
_qfGroups.cc_exp['cc_exp[M]']; // OK