javascript:将变量值传入对象时的问题
来源:岁月联盟
时间:2012-02-29
问题如下:
var o = 'left';
var o1 = {drt:'left'};
var o2 = ['left'];
var obj = {o:333};
var obj1 = {o1[drt]:333};
var obj2 = {o2[0]:333};
代码前三行是变量的几个不同声明方式,即普通变量、对象、数组;后三行分别调用了这3个变量并插入对象。问题来了:
1. 为什么obj1和obj2声明时就直接报错呢?
2. obj没报错,但为什么循环他的属性时,第一个属性直接就叫做“o”,而不是变量o的值"left"呢?
如果我要达到将变量传给对象当属性,将变量值传给对象当属性值的时候,难道只有用:
var o1 = {drt:'left'};
var obj3={drt:o1.drt}
这种办法?可不可以就像我前面说的那么传呢?为什么呢?
希望各位给我讲讲啊,十分感谢
摘自 十年灯
上一篇:js局部打印