var privArr = []; privArr['staProjQueryGrid'] = [{ btn_id : 'but_add', roles : ['2001','2005'] }] console.log(privArr,privArr.staProjQueryGrid[0].btn_id)
第一行是定义一个数组priArr,第二行是给这个数组添加一个属性staProjQueryGird,这个属性值是一个数组。打印结果是 but_add
var unPrivArr = [];//创建一个空数组并赋给unPrivArr unPrivArr['1000']=[];//往空数组unPrivArr内插入一个空数组,等价于 unPrivArr[1000]=[] unPrivArr['1000']['aaa']={'but_check1':1,'but_check2':1}; //给上面插入的那个空数组添加一个名为aaa的属性(因为js里一切皆对 象,所以数组也是对象,可以添加属性和方法),属性值是一个新对象(即{'but_check1':1,'but_check2':1})。
这个和上面有很大区别。首先第二行如果[]里面是数字的话,那么就代表数组unPriArr第1001个元素也为一个空数组(暂时称为x),前1000个元素都是undifined,
如果是变量的话就是数组unPriArr的元素
第三行就是给x添加一个属性aaa,属性值是一个关联数组{'but_check1':1,'but_check2':1}
可以用x['but_check1']来获取对应的值
我又想 关联数组是不是给对象添加属性呢?
var unPrivArr = [];//创建一个空数组并赋给unPrivArr unPrivArr['1000']=[];//往空数组unPrivArr内插入一个空数组,等价于 unPrivArr[1000]=[] unPrivArr['1000']['aaa']={'but_check1':1,'but_check2':1}; console.log(unPrivArr[1000].aaa['but_check1'])
这个能正确输出结果1,或者用 unPrivArr[1000].aaa.but_check1也能输出结果,但是如果加引号就是错误的
如果第三行给{}里面的引号去掉,第四号就会报错,此时只能用 unPrivArr[1000].aaa.but_check1
以上这篇js中的关联数组与普通数组详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持北冥有鱼。
您可能感兴趣的文章:
- JavaScript中的关联数组问题
- JavaScript中的索引数组、关联数组和静态数组、动态数组讲解
- 关于JavaScript中的关联数组分析
- Javascript的常规数组和关联数组对比小结
- js以对象为索引的关联数组
- JavaScript 以对象为索引的关联数组
- js二维数组定义和初始化的三种方法总结
- JS数组的遍历方式for循环与for...in
- js数组去重的三种常用方法总结
- jQuery 遍历json数组的实现代码
- js jquery数组介绍
- JavaScript关联数组用法分析【概念、定义、遍历】