第一种声明:(对象式)
- JScript code
var menuHead = { "standard_": "标准", "style_": "样式", "code_": "代码"};
缺点:
当它的key相同是无法增加!
优点:
编历easy!
- JScript code
for(var key in menuHead ) { var value= menuHead[key]; alert(key+":"+value); }
第二种声明:(数组 括对象式)
- JScript code
var strs =[{"1":2},{"1":4},{"2":2},{"2":4}]; strs.push({"mm","very beautiful"});//还可以这样加
缺点:
编历非常难!
- JScript code
for(var key in strs) { for(var k in strs[key]) { value = strs[key][k]; alert(k+":"+value);//读取key: value: } }
优点:
当它的key相同 一样可以增加!
第三种声明:(数组 括对象[多元素]式)
- JScript code
var strs =[{"key":1,"value",1},{"key":2,"value",20}];
优点:
编历easy!
- JScript code
for(var key in strs) { var value = strs[key]["value"]; var k= strs[key]["key"]; alert(k+":"+value);//读取key: value: }
缺点:
内存大,速度慢一倍!
以上三种,都不太理想,
求更好!
------解决方案--------------------
既然是字典,key就应该无重复啊!
看看 hashtable之类的 key 都不允许重复啊。
------解决方案--------------------
第一种可以变通下
var menuHead = { "standard_": "标准", "style_": "样式", "code_": "代码"};
可以在key后面加个自增编号,如var menuHead = { "standard_1": "标准", "style_2": "样式", "code_3": "代码","code_4": "代码"};
在遍历的时候把那个编号去掉不就可以了
一句话"变则通"